Skip to main content

Full text of "68 Micro Journal Volume 10 Number 03"

See other formats


MICRO JOURNN. 



Australia A $475 New Zealand H2 $ 650 
Singapore S $ 9 45 Hong Kong n $23 50 
Mu/ay*a M $945 Sweden 30S£K 



$2.95 



USA 



OS-9 Atari Amiga Mac S-50 

6800 WtOtt 68008 68O00 68010 68»20 CHtttO 



This Issue: 



"C" User Notes p. 7 

Macintosh Watch p.37 

Atari Users Corner p.40 

Pascal p.20 

OS-9 p.16 

- SMCOS Atari Anfei 

OS-9 HEX MkIoImIi A ihtr Cm triivur Jennet And Lots More! 



VOLUME X ISSUE III • Devoted to the 68XXX User • March 1988 

Th@ Grandfather of "DeskTop Publishing™" 



* /*• i 





/VMAl 



V- * 



03 



'&&*£. 



«. \ 



— **5 



ii 






"?t,t,'i 



^7& 



H 



333 j 



ICC C Cross Compiler 

FOR OS-9/68xxx BASED SYSTEMS 




ANSIC 
Full implementation of the proposed ANSI standard 
for C compilers. Includes the Kernighan & Ritchie 
standard plus improvements for micro-controller 
development. 

Memory-based compiler 
ICC is a fast one-pass compiler based on main 
memory storage. This has three major advantages: 

• NO temporary files 

• NO timeconsuming assembly pass 

• NO separate preprocessor stage 

This combines into one single word: SPEED 

PROM-able C 

ICC makes it possible to put C programs into 
PROM, still using the full C language and all data 
types, including type definitions, long integers and 
statically initialized variables. 

Built-in Type-Checking 
ICC has a UNIX UNT-like type-checking option 
built-in into the compiler. This means that Pascal- 
like warnings are generated, e.g. when functions 
are mismatched or undeclared. 



For more intormallon contact your local distributor: 



Various Options 

8051 — single-chip 

— 64 K CODE + DATA 

— 64 K CODE + 64 K DATA 
6301 and 6801 

280 and 64180 



Frank Hogg Laboratory 

The Regency Tower 

Suite 215 

770 James Street 

Syracuse. NY 13203 

Phone:(315)474-7856 

Telex: 646740 



Elsofl AG 

Zelweg 12 

CH-S40S Baden-Dattwil 

Switzerland 

Phone:(056)83 33 77 

Telex: 828275 



Full Package Development System 

The ICC compiler package includes: 

• C run-time library 

• //-Series Relocatable Macro Assembler 

• XUNK Universal Linker 

• XLIB Universal Librarian 

• Floating-point suppoil 

• 150 page manual in three-ring binder 

All this together give the micro-controller program- 
mer a powerful Development System Software 
Environment. 

€»IAR 

SYSTEMS 

OS-9/68xxx version distribution by: 

Micromaster Scandinavia AB 

Box 1309, S-751 43 UPPSALA, SWEDEN 

Tel int.: +46181385 95 Telex- 76129 



NOW THE GMX MICRO-20 HAS A TWIN - 

,^^,™ y m* GMX TWINGLE-20 
68020 TWIN BOARD COMPUTER WITH MMU 




1111111111, 



All the features of the GMX Micro-20, PLUS - 

• 2 Megabytes additional RAM — for a total of 4 Megabytes of RAM 

• 8 more Serial ports — for a total of 12, and expandable up to 44. 

• MEMORY MANAGEMENT UNIT 



The GMX TWINGLE-20 consists of 2 wards Orw of 

(he boards is the same as the Micro-20, except tor the 68020 
processor which is on the MMU board It uses the same I/O 
expansion Interface, serial adapter boards, and mounting holes as the 
GMX Micro-20, making it easy to upgrade existing systems. Any ol 
the currently available GMX Micro-20 I/O expansion boards can be 
used to provide additional I/O capability Expansion possibilities 
include additional serial ports (up to 44 ports total), additional parallel 
ports, and local area networking ol up to 255 GMX Micro-20s and/or 
TWINGLE-20S- 

ThO MMU board contains the additional 2 Megabytes of 
RAM, 6 serial porls with 2 connectors for the SAB 4 port adaptor 
cards, and the MMU hardware The MMU is a proprietary high-speed 
design that fully supports virtual memory The system RAM normally 
operates with only t wait-state, regardless of processor speed An 
additional wait-stale is needed only when program flow crosses a 4K 
boundary The MMU can be configured lor any one of tour different 
maps, ranging Irom 8 tasks with 8 megabytes ol virtual address 
space each, to 64 tasks ol 1 megabyte each The MMU can be 
disabled tor applications that do not use hardware memory 
management. 

The TWINGLE-20 two board set can occupy the same 
space as a hall-height 5.25' disk drive It is available In 12.5, 16 67 
or 20 MHz. versions, and with or without the 68881 FPC. 



SPECIFICATIONS 

Size: 8 8 x 5.75 x 1.4 Inches. 

Power Requirements. + 5V0C ffl 
1) 



8 3A typical (20MHz. with 



The TWINGLE-20 rise* does not require a + 12V supply + 12V 
supply requirement*, if any, are determined by the serial adapter 
boards and any I/O expansion boards powered through the I/O 
Expansion Interface. 



SOFTWARE INCLUDED: 

An enhanced version at 020Bug with diagnostics lor the MMU and 
the additional RAM and serial porls 

OPTIONAL SOFTWARE: 

UniFLEX VM, Virtual Memoiy version of Hie UniFLEX 
operating system which includes all of the features of the GMX 
Mlcro-20 version, plus lull MMU support. 

The UniFLEX VM Operating System is a demand-paged, virtual 
memoiy operating system written In 68020 Assembler code for 
compactness and efficiency. Any UniFLEX system will run (aster 
than a comparable system written In a higher level language. This Is 
Important In such areas as context switching, disk I/O, and system 
call handling. Other features include: 
• Compact, effioeni Kernel and modules allows handling more 

users more effectively than UNIX systems, using much less disk 

space 

UNIX system V compatibility at the C source code level. 

C Compiler optimized in 68020 code (Optional). 

Record locking for shared files 

Users can share programs in memory 

Modeled alter UNIX systems, with similar commands. 

System accounting facilities. 

Sequential and random (lie access. 

Maximum record size limited only by the disk size. 

Multiple Level Directories. 

Up to 8 Megabytes ol Virtual Memoiy per user 
All the optional languages and software that run under UniFLEX lor 
the Micro-20 are also available lor the TWINGLE-20. 

OS- 9 Users can take advantage of the additional RAM and serial 
potts on the 1WINGLE-20 It does rm presently support the MMU 



ostmta 

NUDinkntltlll 



Carp 



gui ewa km rwuei » namrti <t 6iui» «* 



GITIX 1337 W. 37th Place, Chicago, IL 60609 (312) 927-5510 — TWX 910-221-4055 — FAX (312) 927-7352 



66 Micro Journal 



March '88 



A Member of the CPI Family 



68 Micro 
Journal 



10 Years of Dedication to Motorola CPU Vsen 




6800 6809 68000 68010 68020 



The Originator of "DeskTop Publishing™" 

Publisher 

Don Williams Sr. 

Executive Editor 
Larry Williams 

Production Manager 
Tom Williams 

Office Manager 
Joyce Williams 

Subscriptions 
Stacy Power 

Contributing & Associate Editors 

Ron Anderson Dr. E.M. "Bud" Pass 

Ron Voigts Art Welle; 

Doug Lurie D* • Thco Elbert 



Ed Law 



& Hundreds More of Us 




<?' User Notes 

Basically OS-9 

Pascal 

Logically Speaking 
\ Mac- Watch 
V*. Atari Users Corner 






Bit Bucket 
Classifieds 



7 Pass 

16 Voigta 

20 Reimiller; 

23 Jones ^ 

37 DMW 

40 Randall 
49 
56 



i%i*;,!# -.-■V,^.^ || . | .-. -j ^.^:±._:*-±^,-* 



68 MCRQJQURM 




( ^Contribute Nothing - Expect Nothing" dmw lgge } 



>:■$$•■ '■■■ *$tt/i&dtfl 



m\*<*nnm**fp 



COMPUTER 
PUBLISHING, INC 

"Over a Decade of Service" 



"WorW 





W1** 



68 MICRO JOURNAL 

Computer Publishing Center 

5900 Cassandra Smith Road 

PO Box 849 

Hixson.TN 37343 

Phone (61S) 842-4600 Telex SI0 600-6630 

Copyrighted © 1987 by Computer Publishing. Inc. 
68 Micro Journal is the or iginal "DeskTop Publishing" product and has 
continously published since 1978 using only micro-computers and 
special "DeskTop" software. Using first a kit built 6800 micro com- 
puter, a modified "ball" typewriler. and "home grown" DeskTop Pub- 
lishing software. None was commercially available at that lime. For 
over 10 years we have been doing "DeskTop Publishing"! We origi- 
nated what has become traditional "DeskTop Publishing"! Today 68 
Micro Journal is acknowledged as the "Grandfathcr"of"DeskTop Pub- 
lishing" technology. 



68 Micro Journal is published 12 limes a year by Computer Publishing 
Inc. Second Class Postage paid ISSN 0194-5025 at Hixson. TN. and 
additional ennies. Postmaster: send foim 3597 to 68 Micro Journal, 
POB 849. Hixson. TN 37343. 

Subscription Rates 

1 Year $24.50 USA. Canada & Mexico $34.00 a year. 

Others add $12.00 a year surface, $48.00 a year Airmail. USA 

funds. 2 years $42.50, 3 years $6430 plus additional postage 

for each additional year. 

Items or Articles for Publication 

Articles submitted for publication must include authors name, ad- 
dress, telepltone number, date and a statement that the material is 
original and the property of the autltor. Articles submitted should be 
on diskette, OS-9. SK'DOS. FLEX. Macintosh or MS-DOS. All 
printed items sliouW be dark type and satisfactory for photo-reproduc- 
tion. No blue ink! No hand written articles - please) Diagrams o.k. 

Please - do not format with spaces any text indents, chat Is.etc. (source 
listing o.k.). We will edit in a li formatting. Text should fall flush left and 
use a carriage return only to indicate a paragraph end. Please write 
for fee authors guide. 

Letters & Advertising Copy 

Lenm to the Editor should be the original copy, signed! Letters of grip 
as well as praise are acceptable. We reservethe right to reject any letter 
or advertising material, for any reason we deem advisable. Advertis- 
ing Rotes: Commercial please contact 68 Micro Journal Advertising 
Department. Classified advertising must be non-commercial. Mini- 
mum of $15.50 for first 15 words. Add S.60 per word thereafter. No 
classifieds accepted by telepltone. 



March 88 



66 Micro Journal 



OS-9 . . . 

Making Beautiful Mi 



in the Key of "C"! 



m 



'hen you need to orchestrate 
beautiful music on your VME system, 
look to Micioware for just the right 
score Our finely tuned OS-9 Operat- 
ing System is truly the maestro's 
choice when the project requiies C 
Language development. Our super- 
lative C Compiler— also available in an 
optimized 68020 version— produces 
fast, compact ROMable code for your 
most demanding applications. A 
powerful Assembler, Linker and 
Symbolic Debugger assists in target 
development And our C Compiler 
it source compatible with UNIX applica- 
tions and available in cross-compiler con- 
figurations for Sun. VAX and Hewlett- 
Packard environments. 

OS-9 Keeps On Performing 
Even After the Fat Lady Singsl 

Most operating systems hit a sour note 
when the project reaches completion. But 
not OS-9. Because of its modular design 
and UNIX-style architecture, your investment 
in OS-9 experience tools and applications 
translates into a valuable resource for yot>r 
company's future. OS-9 can be utilized 
again and again over your entire corporate 
product range 



»W| 




An Accompaniment 
of Total Support 

Mlcroware is proudly setting the indus- 
try's standard for customer support. 
Vbu'll find outstanding technical 
documentation that leaves nothing in 
doubt when it comes to real-world appli- 
cations. A rigorous Ouality Assuiance 
program guarantees customer satisfaction 
by identifying trouble spots before they 
become customer problems. And with our 
Customer Hotline you are only a 
telephone call away from courteous and 
concise information. So join the growing 
egions of Mlcroware "C" aficionados. Call 
us today and find out how you can create 
inspiring harmonies on your system. 



MICROWARE SYSTEMS CORPORATION 

I9«0 N.W. 1 14th Street 

Des Moines. IA 50322 

Phone 515-224-1929 

Wtstcnt Regional O/fre 
4401 Creat America Parkway 
Santa Clara, CA 95054 
Phone 408-98O-O2OI 



OWMtXXtfct imfcimii «• mamm* WX t> • tradKwk dt 0€C 
UNIIbi twfcnark ol HST 



68 Micro Journal 



March "88 



MUSTANG^^ 




Super SBC 




tH 



The MUSTANG-020 68020 SBC provides ■ powerful, 
compact, 32 bit computet system featuring the "state of the art" 
Motorola 68020 "super" micro-processor. !l comes standard 
with 2 megabyte of high-speed SIP dynamic RAM. serial and 
par aUelpoi is. floppy disk controller, a SASI hard disk in tetface 
for intelligent hard disk controller! and a battery backed-up 
lime-of-day clock. Piovisions are made for the super powerful 
Motorola MC6888! floating point math co-prtxxsaoT, for 
heavy rrtatft and number crunching applications. An optional 
network interface uses oneseriii (four (4) standard, expandable 
to 20) as a 125/bit per second network channel, Suppoib as 
many as 32 nodes. 

1 he MUSTANQ-020 is ideally suited to a wide variety of 
application*, b provides a cost effective alternative to the other 
MC68020 systems now available. It is anexceDent in trodue lory 
tool to the world of hi-power, hi-speed new generation "supn 
micros". In practical application* it has numerous applications, 
ringing from toejuific to education. It is already being used by 
government agencies, labs, universities, business and practi- 
cally evoy other critical applications center, worldwide, where 
true multi-user, multi-tasking needs exist. The MUSTANQ- 
020 is UNIX C level V compatible. Where low cost and power 
is a must, the MUSTANQ-020 is the answer, as many have 
discovered. Proving that price is not the standard for quality! 

As a software development station, a general purpose 
scientific or small to medium business computer, or a super 
efficient real-time controller in process control, the MUS- 
TANQ-020 is the cost effective choice. With the optional 
MC68881 floating point math co-proceeaur installed, it has the 
capability of systems costing many times over it's total acqui- 
sition cost. 

With the DATA COM P "total package", consisting of a 

r Data-Comp Division ^ 

A Occade of Quality Savta'^ 
Systems World Wide 

Computer PiitnsNng, Inc. 5900 Cassada Sndh Road 
TBtyvre 615 842-4601 - Tatar 510 600-6630 foon, Tn 37343 
^ 



DATA-COMP Proudly Presents the First 

Under $4300 "SUPER MICRO" See other 

advertising (backcover) for economy 

system (68008) - under $2400 complete! 



heavy duty metal cabinet, switching power supply wiih rl/line 
bypassing, 5 inch DS/DD 80 track floppy. Xebec haid disk 
controller. 25 megabyte Winchester hard disk, four saial RS- 
232 ports and a UNIX C level V compatible multi-tasking, 
multi-user operating system, the price is under $4300. w/12.5 
megahertz system clock (limited lime offer). Most all popular 
high level languages are available at very reasonable cosLThe 
system is expandable to 32serial ports, at a costof less than S65 
per pott, in multiples of 8 port expansion options. 




The SBC fully populated, quality tested, with 4 serial ports 
pre-wiied and board mounted is available for less that $2500. 
Quantity discounts are available for OEM and special applica- 
tions, in quantity. All that is required to bring to complete 
"system" standards is a cabinet, power supply, disks and oper- 
ating system. All these are available as separate items from 
DATA-COMP. 




AtailabU J2J. 23 Mkt rftumt. tall for tpeciat prictt 

A special version of the Motorola 020-BUG is installed on 
each board . 020-BUG is a ROM based debugger package with 
facilities for downloading and executing user programs from a 
host system. It includes commands for display and modifica- 
tion of memory, breakpoint capabilities, a powerful assembler/ 
disassemble and numerous system diagnostics. Various 020- 
BUG system rou tinea, sue has I/O handlers are available for user 
pro grams. 

Normal system speed is 3 4 J MIPS, with burst up to 10 
MIPS, at 16.6 megahertz. Intelligent I/O available for tome 
operating systems. 

Hands-on "actual experience sessions", before you buy, 
arc available from DATA-COMP. Call or write for additional 
information or pricing. 



Mar est '88 



68 Mora Journal 



MusUnf-030 ktuaUng-OS Bcachmuki 



HMATT300XKtal>l] 
AT* T TOO UNIX PC Moid 

c*cvax ii/nouNu i-iir» 4 i 

DBCVAXII/WO ' 

Monon aiiHu 
eJMEomn lOMki 

mi!TAMi-m MM OJ. • MI f * tOt 
UVITAMG 4» Mi J» ©I-* UIMIUf 

m it t si; j.-« ho Jt w< «*t j li*TLMX It Idht 



) 

IiUaMMIH.MV»r*NC«l _4JMW, 
U*kl.llWn<H*nlil(ia 



»,7 




7.2 


43 


\& 


13 


SJ 


U 


IU 


lO 


»j 


4jD 


»/ 


«J 


u 


«J» 


44 


ua 



OS-9 



•ec 



t J10OO0) 



pat ./Co-™ 
(UIT-^po-i. 
PAT/JUST C 



OOM 

■A 

CC 



UnlFLEX 



TMOCfiM. 
XTAtJtl— A4 



*»lp«»» <-. !»*■>« | 

luted MUJTANO-OJT" 
Add fo 14 J Mbi OKOO 
/Udf<»l<;6Mta«rai 
Add l« » Mi taTZMlAW 



111 



'usi 



KKpjtn 1 a 2 AdBpo Cadi Wo JUU1 
Sack cwd «fan4 mw "•- pa* 

UltaPailMllOcvd 

Lin ) HOD loUr^ tiup,, 
4 r>|» of t Iba nit, apm batki 



SS0O0 

MOM 
30040 

rain 
75000 

30040 
MO 00 
493 oo 
\Hoa 

173.00 
«MO0 
2900 

nn 

tmio 

MS 00 
125 00 



U30OB 
13000 

jooeo 
joaoo 

33000 
730*0 
10000 
10000 

nsi 

30j00 
410* 
9*300 



3T3O0 

rsoo 

750O0 

MS 00 
14900 



i t> Mi 4to aid PDA tulai 4 . 

rMi^DjauifVllllDlAy 



ItCAH 




• VOQai 

■ MUTT AJ4O0XI- 

i4*3jn uvi uoood 



*JJ MUSTAN&OKJ" rn4» ad lutj <■>«•»• 



473 O0 

I20O0 
J193O0 



Mustang Specification* 

tZJ MSr (°fWBtl 16.6 Mhr •wUNo) MC6I 020 full JZ-bn wile pub 
32-ba wvd* <14U i 



(optuuQ 



The 

P 

R 

O 

i 



objD code nwn p tft i W i with «Q tfXXX fenily | 
twhaoCcd ■—a*—*— id m»tj) < 
6SSII nwktfa hi-«paBd (laoom; poise i 

full Bjppart IEEE P7S4. A»ft 10.0 
OBODiail ind other oaaaific cbmb fanaku 
2 Moptr/B of SIP RAM (5 1 2 1 32 hit oponb 
op to 2MC byw* of EPSOM (M * 71 fain) 

4 AATOutemm «bu1 faO pOrtl •ttVatUlrf 

epbqul iq 20mkm1 para 
•uwlw) RS-232iotcr/»ce 
oebootl artwork taior/ue 

Tend I fait panUd part {1/2 MC 61230) 
Cauiiua lypepototfl 
anpinimi caiitf^tT far 1/0 4cvian 
16 bit diu pith 
256 byte tddiv* cpuo 
2in(cnvpt i/*pul» 
dock tad control citntlj 
Mauvalt ItOOuam) Modulo, 
liroc of diy dock/oil arxiu wAadory backup 
oartkaOep for 2, 5 \f*" 0°WJ «ii«k envoi 
aafla or double tide, tvwfja or doufals <lomiiy 
35 to 80 trie* oriflrtjbto (4S.961H) 
SASI trtorffcce 

pn^raoBTubk p»¥»***' caLanupt goonlor 
aotwrupt niofrom aiiao-oaiBdi (o 
hiijWy kcwM una hue (3 PPM) 

5 bit mm* nraA, foukbfa by the OTJ 
Hu&fwM enfk*- *tap Gvpvhiliiy 




Don't be mislead! 

ONLY Data-Comp 

delivers the Super 

MUSTANC020 



TboMB hj-«paBd 61020 tf»*on» are pn-omi) y i 
O xwma n a a Ajonooi u well u Ub)vi 
CoBon, vorfdtvide. iW> /oM .oMib* 

V compMuWify umJ low cor ■■man. 



Only the "PRO" Version 
of OS-9 Supported! 




This is HEAVY DUTY 
Country! 



I Fa 4»t«k> mmM*«afl«« MOol 

■ na»>io>iieu<«idau]QiSK. I 

| n» i y >— X W t t ■ nwi. aa, iwd i 

■ CHIom—Wa !■>■ I 



I tt NASA, Aiamic &^>17 Gmnnnni. 
I UNDCCIcnt 



xMoam 

J»9.»J 
1M9 9S 
I».»S 

uso.ao 

MVC 
J».»S 

a«.oo 

J3«.0O 

J 20.00 

3100.00 

I7JS.00 

3J37S.O0 

»7S.O0 

1750.00 



PHceLW: 

Cahiart *A-w44ua4 w 
5".» (nek ))<W7 OS/DO 

OS-» MK PR/4Kkn4l V«i« 
COropiWffSOO V4lw) 
Winotwar C4bto 
Wisduur Ooyc 25 Mby« 
Ibid Duk CooboUb 
Stoppuil USA UPS 
UMRiTX 

MCUIIl r/pnulhpnxajv 
16.67 Mhi MC68020 
16.67 Mhi MC6JII1 
20M>aMQMO20 Sy> 
N«M4UM|I1 <**v wtMk vilh 20 Mhi Sy> 
Toul: 

Save $1000.00 
Complete 



Add 



J52»S0 



Data-Comp Division 



of Quality 
Suslcrru Wofid-Vt/Uc 



Computer Publtehlng, Inc. woo 

TMUpf&tt 615 M2-4M1 . T44n 610 SD-EB 



SmilliRoni 
Hlimon, In 37343 



25 Mbyte HD System 

$4299.80 
85Mbyte HD System 

$5748.80 

Note: Only Professional OS-9 Now Avtilabk (68020 Version) 

Includes ($500) C Compiler • 68020 A 68881 Supported - 

For UPGRADES Write or Call for Profeaiional OS-9 Upgrade Kit 



68 Micro Journal 



March '88 



/ PAT - JUST s 



— , 



PAT y M\ (OS® i 

With 'C Source 



$229.00 



altera 



A 

u 


't+m"} 

Divii 

c 


(ion of 

p i 


imtfri ^ 

" S.E. 
Mediae 

5900 Cuwwh Smith M. 

Huuoo,Tn 37W3 

Telephone 61 S 842 -6809 

TtluJ10 600-6£30 






~ *" J J 



PAT FROM S. E. MEDIA -- A FULL FEATURED SCREEN ORIENTED TEXT EDITOR 
with all the best of PIE. For those who swore by and loved PIE, this is for YOU! All PIE 
features & much more! Too many features to list. And if you don't like ours, change or add 
your own. C source included. Easily configured to your CRT terminal, with special configuration 
section. No sweat! 

68008 - 68000 - 68010 - 68020 OS-9 68K $229.00 



COMBO 



PAT! JUST 

Special $249.00 

JUST 

JUST from S. E. MEDIA - - Text formatter written by Ron Anderson; for dot matrix 
printers, provides many unique features. Output formatted to the display. User con- 
figurable for adapting to other printers. Comes set-up for Epson MX80 with Graflex. Up 
to 10 imbedded printer control commands. Compensates for double width printing. 
Includes normal line width, page numbering, margin, indent, paragraph, space, vertical 
skip lines, page length, centering, fill, justification, etc. Use with PAT or any other text 
editor. The ONLY stand alone text processor for the 68XXX OS-9 68K. that we have 
seen. And at a very LOW PRICE! Order from: S.E. MEDIA - see catalog this issue. 

68008 - 68000 - 68010 - 68020 OS-9 68K 
V With 'C source $79.95 J 

Match '68 68 Micro Journal 




The C Programmers 

Reference Source. 

Always Right On Target! 

C User Notes 



A Tutorial Series 



By: Dr. E. M. 'Bud' Pass 
1454 Latta Lane N.W. 
Conycrs, GA 30207 
404 483-1717/4570 

Computer Systems Consultants 



INTRODUCTION 

This chapter concludes the discussion and pres- 
entation of a public-domain portable math library 
written in C by Fred Fish. 

MATH LIBRARY 

The log.c function returns the natural 
logarithm of its argument. 



log double precision natural log 



■/ 



tinclude <stdlo.h> 
(include "pmluser.h" 
• Include "pinl.h" 

static double log pcoeffst) 

( 

-0.240139179559210509B6e2, 
0.30957292821537650062e2, 
-0 . 96376909336868659324el, 
0.421OB7371217979714S 



static double log_qcoeffs[] - 

( 

-0.120069SB97796052S471e2, 
.194B0966070088973051e2, 
-0.8911109027937B312337«1, 
1.0000 



static char 


funcname [ 


double log 


(xl 


double x ; 

( 





"log" 



auto int k; 

auto double s; 

auto double z; 

auto double zt2; 

auto double pqofz; 

auto struct exception xcpt; 

extern double frexp ; 

extern double poly ; 



DBUG_ENTER (funcname) ; 

DBUG3 ("login", "arg %le", x) ; 

if (!x) 

( 

xcpt. type - SING; 

xcpt. name - funcname; 

xcpt.argl - x; 

if (imatherr Uxcpt)) 

( 

fprintf (stderr, "»s: SINGULARITY error\n" 
funcname) ; 

errno - EDOM; 
xcpt.retval - -MAXDOUBLE; 
I 
) 

else 
If (x < 0.0) 



I 



xcpt. type - DOMAIN; 

xcpt. name - funcname; 

xcpt . a rgl - x ; 

If (Imatherr (ixcpt)) 

( 

fprintf (stderr, "%s: DOMAIN error\n" 



funcname) ; 



1 



ermo - EQOH; 
xcpt.retval - -MAXDOUBLE; 



} 

else 

t 

s - SQRT2 * frexp (x, ik); 

DBUG_3 ("log", "k - %d", k); 

DBUG3 ("log", "s - %le", s) ; 

z - 7s - 1.0) / (s * 1.01; 

DBUG_3 ("log*, "z - %le", z) ; 

zt2 - z * z ; 

DBUG_3 ("log", "zt2 - Ue\ zt2) ; 

pqofz - z * (poly (3, log pcoeffs, zt2) / 
poly (3, log_qcoeffs, zt2l); 

DBUG3 ("pqofz", "pqofz - %le", Fqofz) ; 

DBUG_3 ("log", "k - *d", k); 

DBUG_3 ("log", "LN2 - *le", LN2); 

x - k • LN2; 

DBUG 3 ("log*, "x » *le", x) ; 

x -= 1WSQRT2; 

DBUG_3 ("log", "x - %)e", x) ; 

X +- pqofz; 

DBUG_3 ("log", "x - %le", x) ; 

xcpt.retval = x; 
) 

DBUG3 ("logout", "result %le", xcpt.retval); 
DBUGRETURN (xcpt . ret va 1 1 ; 



$8 Micro Journal 



Mart* '88 



The loglO.c function returns the cosmon 


DEBUC4 ("mlnln", *x - %le y - %le", x, y> ; 


logarithm of its argument . 


If (x > y) 
( 

x - y; 


/• 


t 

DEBUGS ("mlnout", 'result %le". x) ; 


* loglO double precision common log 
*/ 


LEAVE ; 


return (x) ; 


•Include <stdlo.h> 


I 


•Include "pmluier.h" 




•Include "pml.h" 






The mod.c function returns the remainder 


statlc char Cuncnam | ] - "loglO"; 


after division of its first argument by its 




second argument . 


double loglO (x) 




double x; 




< 


/• 


extern double log 0; 


* mod double precision modulo 


DBUG ENTER (funcname); 


V 


DBUG^J ("toglOin". "arg %le", x) ; 


•Include <stdio.h> 


x - LOG10E * log (x) ; 


•include "pmluser.h" 


DBUG_3 ("loglOout", "result %le". x) ; 


•Include "pml.h" 


DBOC~RETURN (x) ; 




J 


double mod (value, base) 




double value, - 




double base; 


The max.c function returns the larger of 


< 


its two arguments. 


auto double lntpart; 




extem double niodf ; 


/■ 


DBUG^ENTER ("mod") ; 


* max double precision maximum of two arguments 


DBUG~4 ("modln", "args %le %le", value, base); 


•/ 


If (base) 




value /« base; 


•include <stdio.h> 


value - modf (value. Cintpart); 


• Include "pmluser.h" 


value •» base; * 


•Include "pml.h" 


DBUG_3 ("modout". "result %le", value) ; 




DBUG~RETURN (value); 


double max (x, y) 


) 


double x; 




double y; 




( 


The poly.c function evaluates a polynomial 


ENTER ("max"); 


and its value. Its three arguments are the 


DEBUG4 ("maxin". *x - %le y - %le", x. y) ; 

If (x < y) 

< 


order of the polynomial, a pointer to an 


array of double precision polynomial coef- 


x - y; 


ficients (in ascending order) , and the 


} 


independent variable . 


DEBUG3 ("maxout". 'result %le", x) ; 




LEAVE <); 




return (x) ; 


/* 


1 


* poly double precision polynomial evaluation 




V 


The max.c function returns the smaller of 


•Include <stdlo.h> 


its two arguments. 


•include "pmluser.h" 




•include "pml.h" 


/• 


double poly (order, coeffs, x) 


* mln double precision minimum of two arguments 


register lnt order; 


*/ 


double 'coeffs; 




double x; 


•include <stdio.h> 


< 


•Include "pmluser.h" 


auto double curr_coeff; 


•Include "pml.h" 


auto double rtn_value; 


double mln <x, y) 


DBUG_ENTER ("poly") ; 


double x; 


DBUG_5 ("polyin", "args »d %lx %le", order, coeffs. 


double y; 


x); 


( 


if (order <- 0) 


ENTER ("mln"]; 


( 




rtn_value • *coeffs; 



March '68 



68 Micro Journal 






J 

else 

( 

curr_coeff » *coeffs; /* Bug in Unisoft' s 
compiler- */ 

coeffs++; /* Bad code gen for *eoeffs*+. 

»/ 

rtn_value «■ curr_coeff ♦ x * poly (-order, 
coeffs, x) ; 
) 

DBUG 3 ("polyout", "result lie", itn valuel; 
DBUG_RETURN (rtn_value> ; 
1 



pnj err (SCALE OVERFLOW); 
> 

else 

if (temp2 < 0) 
( 

pnlerr(SCALEUNDERFLOW) ; 
J 

else 
1 

tempi t= MflNTHasK; 

temp2 - temp2 « EXP_SHIFTS; 

*lpntr - tempi I temp2; 
) 
return (share. dval) ; 



The scale. c function adds a specified 
integer to a number's exponent, effec- 
tively multiplying by a power of 2 for 
positive scale values and dividing by a 
power of 2 for negative scale values . 



The raod.c function returns its first 
argument with the same sign aa ita second 
argument . 



scale scale a double precision number by power 



of 2 



•include <stdlo.h> 
« include "pmluser.h" 
•include "pnl.h" 

•lfdef pdpll 

• define EXP_MASK 0x7F800000 /* Mask for exponent 

•define MANT MASK 0x807FFFFF /* Mask for mantissa 



•define EXPSHIFTS 23 /• Shifts to get into LSB' s 

V 

• define LEXPMASK 0377 /• Mask for shifted exponent 
»/ 

•endif 

•ifdef mc68000 

• define EXP_MASKOx7F800000 /* Mask for exponent V 



• define MANT MASK 0x807FFFFF / * Mask for mantissa 



«/ 



•define EXPSHIFTS 23 /* Shifts to get into LSB' s 

*/ 

• define LEXPMASK 0377 /* Mask for shifted exponent 

V 

•endif 

static union 
( 

double dval; 

long lval(2]; 

) share; 

double scale (value, scale) 

double value; 

register int scale; 

I 

register long tempi, tempi, *lpntr; 



sign transfer of sign 



•include <stdio.h> 
•include "pmluser.h" 
•include "pml.h" 



double 
double x; 

double y; 

I 

double 



sign (x, y) 



rtnval; 



ENTER ("sign") ; 

DEBUG4 ("signin", "args lie lie", x, y) ; 

if (x > 0.0) 

( 

if (y > 0.0) 



else 

( 



rtnval « x; 



lse 

rtnval ■» 

f (y < 0.0) 
rtnval = 
lse 

rtnval — 



) 

DEBUG3 ("slgnout", "result lie", rtnval); 

LEAVE 0; 

return (rtnval) ; 



lpntr ■= (share. lval [0] ; 
share. dval • value; 
tempi - *lpntr; 

temp2 - ((tenipl i EXP_MASK) >> EXP_SHIFTS) + scale; 
if (temp2 > MAX_EXPONENT •» 128) 
( 



66 Micro Journal 



Mscn-66 



The ai.n.c function returns the sine of ita 
argument . 



sin 



double precision sine 



•Include <stdlo.h> 
•Include "pmluser.h" 
•Include "pwl.h" 



statlc double 

( 



sln_pcoef fs | ) 



D.20664343336995B5B24De7. 
-0.18160398797407332550e6, 
0.359993D«949636iee317e<l. 
-0.2010748329«88615719e2 



xcpt.retval 



(cos (HMJPI + x) ); 



> 

else 

If <x < X6_UNDeRf IOWS it x > -X6UNDERFIOWS) 

( 

xcpt.retval - x; 
t 

else 
( 

y - x / F0UR7HPI; 

yt2 - y * y; 

xcpt.retval - y ■ (poly <3. sln_pcoeffs, yt2) / 

poly (3. sin_qcoeffs, yt2)); 
) 

DBUG_3 ("slnout". "result %le". xcpt.retval); 
DBUG_RETURN (xcpt . retval ) ; 



); 



static double sln_qcoef fs|] 

< 

0.26310659102647698963e7, 
0.392702427746490003O8eS, 
0.27811919481083844087e3. 
1.0 



); 



static char funcname |] 


- "s 


double 


>in tx) 






double X! 






double 


y; 






double 


yt2; 






double 


rtnva 1 


; 




extern 


double 


mod 


(); 


extern 


double 


cos 


I); 


extern 


double 


poly 


<!; 


auto s 


:ruct exception 


xcpt 



sin" 



OBUG ENTER {funcname) ; 
DBOG^S ("slnln". "arg %le' 
If (x < -PI || x > PI) 
I 

x - mod (x, TWOPI) ; 

If (x > p:> 

{ 

x » x - TWOPI; 

] 

else 

If (x < -PI) 

( 

x - x + TWOPI; 

) 
) 

If (X > HMFP1) 
I 



x); 



xcpt.retval 



(sin (x - PI)); 



else 

If (x < -HALFPI) 
( 

xcpt.retval ■ -(sin (x + PI)); 
t 

else 

If (x > FOURTHPI) 
( 

xcpt.retval - cos (HnLFPl - x| , 
) 

else 
If (x < -FOURTHPI) 



The ainh.c function returns the hyperbolic 
sine of ita argument. 



* slnh double precision hyperbolic sine 

•/ 

•Include <stdlo.h> 
• Include m pKiluser.h* 
•Include "pml .h" 

static char funcnamel) - "sinh"; 

double slnh (x) 

double x; 

l 

extern double exp (); 

auto struct exception xcpt; 

0BUG_ENTER (funcname); 

0BUG_3 ("sinhin", m arg lie", x) ; 

if (x > LDGE_MAXDOUBLE) 

{ 

xcpt. type - OVERFIOW; 

xcpt. name ■ funcname; 

xcpt.argl - x; 

If I Inatherr (ixcpt)) 

( 

fprlntf (stderr. **s: OVERFLOW errorNn", 
funcname) ; 

errno - EXANGB; 
xcpt.retval - M\XDOUBI£; 
) 
t 

else 

If (x < LOGE_MINDOUBLE) 
I 

xcpt. type - UNDERFLOW , ' 

xcpt. name • funcname; 

xcpt.argl • x; 

lf ( rmatherr ((xcpt)) 

I 

fprlntf (stderr. Ms: UNDERFLOW error\n", 
funcname) ; 

ermo ■ ERWZ; 
xcpt. retval ■ MINDOU3(£; 
I 
> 

else 
{ 



10 



March '88 



68 Micro Journal 



x - exp (x) ; 

xcpt.retval - 0.5 * (x - (1.0 / x) ) ; 
I 

0BUG_3 ("slnhouf, "result *le", xcpt.retval); 
DBUG_R£TURN (xcpt.retval); 



The scjrt.c function returns the square 
root of its argument . 



I 



sqrt double precision square root 



*/ 



(include <stdio.h> 
(Include "pmluser.h" 
f Include "pml.h" 

•define FD 0.594604482 /• Approximation coeff '/ 



fdeflne PI 2.54164041 

fdeflne Q0 2. 13725758 

fdeflne Ql 1.0 

tdefine ITERATIONS 3 



static 


char funcname [] 


double 
double 
( 


sqrt (x) 
x; 



/* Approximation coeff */ 
/* Approximation coeff */ 
/* Approximation coeff */ 

/* Number of iterations •/ 

"sqrt"; 



auto int k; 

register int bugfix; 

register int k/nod2; 

register int count ; 

auto int exponent; 

auto double in; 

auto double u; 

auto double y; 

auto double rtnval ; 

auto struct exception xcpt; 

extern double frexp (); 

extern double ldexp (); 

D8UGENTER ("sqrt") ; 

DBUG_3 ("sqrtin", "arg »le", x) ; 

if (Tx) 

( 

rtnval - 0.0; 
) 

else 

if (x < 0.0) 
{ 

xcpt. type » DOMAIN; 

xcpt . name - funcname ; 

xcpt.argl - x; 

if (imatherr ((xcpt)) 

( 

fprintf (stderr, "%s; DOMAIN error\n". 



funcname) , 



) 



errno - EDOM; 
xcpt.retval » 0.0; 



t 
else 

( 



n « frexp (x, 6k) ; 

u = (P0 ♦ (Pi * ml) / (00 ♦ (Ql • ml); 
for (count - 0, y « u; count < ITERATIONS; 



count**) 



( 



y - 0.5 * (y ♦ (m / y)>; 



(k » 2)) < 0) 



I 



if ((kmod2 
( 

y /- SQRT2; 
) 

else 

if (kmod2 > 0) 
( 

y *- SQR?2; 



bugfix = 2; 

xcpt.retval » ldexp (y, k / bugfix); 
) 

0BUG_3 ("sqrtout", "result %le", xcpt.retval); 
DBUG_RETURN (xcpt . retval) ; 



The tan.c function returns the tangent of 
its argument. 



tan Double precision tangent 



# Include 


<stdio.h> 




iinclude 


"pmluser. 


h 


i include 


"pml.h- 




static cr 


ar fun 


c 


double 


tan (x) 




double 
( 


x; 





funcname {] - "tan"; 



double sinx; 

double coax; 

auto struct exception xcpt; 

extern double sin () ; 

extern double cost); 

DBUG_ENTER {funcname); 

DBUG_3 ("tanin", "arg %le", x) ; 

slnx « sin (x) ; 

cosx = cos (x) ; 

if (icosx) 

( 

xcpt .type = OVERFIjOW; 

xcpt. name » funcname; 

xcpt.argl - x; 

if (Imatherr (Sxcpt) ) 

< 

fprintf (stderr, "%s: OVERFIjOW error\n". 



funcname) ; 



errno - ERANGE; 
if (sinx >- 0.0) 
( 

xcpt.retval - MAXDOUBIE; 
} 

else 
( 

xcpt.retval > -MAXDOUBLE;. 
I 



} 



) 

else 

( 

) 

DBUG_3 ("tanout", "result %le", xcpt.retval); 

DBUGRETURN (xcpt.retval); 



xcpt.retval - sinx / cosx; 



68 Micro Journal 



Macti '88 



11 



The tanh.c function returns the hyperbolic 
tangent of ita argument. 



The xexp.c function returns the exponent of 
ita argument . 



/• 



tanh double precision hyperbolic tangent 



xexp extract double precision number' s exponent 



•Include 


<stdlo 


.h> 


•Include 


"prnluser.h* 


(Include 


"pml.h 


* 


static char 


f uncname [ ] 


double 


tanh 


(x) 


double 
I 


x; 





"tanh"; 



auto struct exception xcpt; 
register lnt positive; 

extern double slnh () ,- 

extern double cosh () ; 

DBUG_ENTER (funcnamo); 

DBUG_3 ("tanhin", "arg lie*, x) ; 

if (X > 7ANH_MAXM>G II X < - T ANH_HAXARG > 

( 

if (x > 0.0) 

) 

positive - 1; 

) 

else 

1 

positive - 0; 

I 

xcpt. type • FLOSS; 

xcpt.name - funcnane; 

xcpt.argl ■ x; 

if <!matherr ((xcpt)) 

{ 

fprintf (stderr, "*s: PLOSS error\n" 



funcname) ; 



ermo • ERANGE; 
if (positive) 
( 

xcpt. ret val - 1.0; 

> 
else 

( 

xcpt.retval = -1.0; 



I 



1 

else 

( 

) 

DBUG_3 ("tanhout*. "result »le*, xcpt.retval); 

return (xcpt.retval); 



xcpt.retval » slnh (x) / cosh (x); 



•include <stdio.h> 
•include "prnluser.h" 
•Include "prnl.h" 

llfdef roc68000 

•ifdef IEEE 

•define EXP MASK 0x7FF00000 /• Mask for exponent 



*/ 



•define EXP SHUTS 20 



•define EXP BIAS 1023 



/• Shifts to get into ISB's 
/* Exponent bias •/ 



•else 

•define EXP_MASK 0x7F8D0000 /• Mask for exponent 



•define EXP SHIFTS 23 



•define EXP BIAS 128 



/• Shifts to get into LSB's 
/* Exponent bias »/ 



•endlf 
lendif 



tifdef pdpll 

•define EXP_MASK Ox7F800000 /• Mask for exponent 



•define EXP_SHIF7S 23 

V 

•define EXP_BIAS 128 

lendif 

union dtol 
( 

double dval; 

lnt ival(2]; 

If 

* nt xexp (value) 

union dtol value; 
< 

register lnt *lpntr; 

if ( lvalue. dval) 
( 

return {0) ; 
> 

lpntr - (value. lval I0J ; 
•ipntr *» EXPMASK; 
•lpntr »• EXP_SHIF7S; 
•ipntr — EXP_BIAS; 
return Cipntr); 



/• Shifts to get into lSB's 
/• Exponent bias •/ 



12 



Mart* "88 



66 Micro Journal 



The xexp.c function returns the mantissa 


EXAMPLE C PROGRAM 


of its argument . 






Following is this month's example C program: ft 


/* 


tests the functions in the math library which accept 


* xmant extract double precision number' s mantissa 


one complex argument and return a complex re- 


*/ 


sult. Other cases would be tested in a similar man- 


•include <stdio.h> 


ner. 


t include "pmluser.h" 




• include "pnl.h" 






/« 


lifdef pdpll 


* cZc.c test complex to complex math functions 


•define MANT_MASK 0xB07FFFFF /* Mantissa extraction 


•/ 


mask •/ 




• define ZPOS MASK 0x40000000 /• Positive 1 mask for exp 


•include <stdio.h> 


- •/ 


•include "pmluser .h" 


•define ZNEG MASK 0x40000000 /• Negative * mask for exp 
. •/ 

•endif 


•include <dbug.h> 


•define TRUE 1 




•define FALSE 


tifdef m=68000 


•define MAX_ABS_BRR 1.0e-6 /• catch only bad errors •/ 


•ifdef IEEE 




♦define MANT_KASK 0x800FFFFF /• Mantissa extraction 




mask '/ 


static int vflag; /* Flag for verbose option */ 


•define ZPOS MASK Ox3FFO0O00 /« Positive i mask for exp 


static int eflag; /* Simulate an error to error printout 


=. «/ 


•/ 


•define ZNEG_MASK Ox3FFOOO00 /* Negative • mask for exp 

> •/ 

•else 


static int sflag; /• Flag to show final statistics •/ 




•define KANT_MASK 0x807FFFFF /* Mantissa extraction 


static double max abs err - MAX_ABS_ERR; 


mask ■/ 




•define ZPOS MASK 0x40000000 /♦ Positive • mask for exp 


/* 


m •/ 


* External functions which are used internally. 


•define ZNEG_MRSK 0x40000000 /• Negative • mask for exp 

- •/ 

•endif 


*/ 


extern char *strtok (); 


•endif 


extern double atof (); 




extern double cabs (),- 


union dtol 


extern COMPI£X csubt () ; 


( 


extern COMPLEX cdiv (); 


double dval; 




int lvall2!; 


/• 


1; 


* External functions to be tested. 
•/ 


double xtnant (value) 


union dtol value; 


extern COMPIEX cacosl); 


( 


extern COMPI£X casin(); 


register int *ipntr; 


extern COMPIZX catan(); 




extern COMPI£X ccos(); 


ipntr - lvalue. ival[0]; 


extern COMPI£X ccosh ; 


•ipntr 4- MANT_MASK; 


extern COMPIEX cexp(); 


•ipntr !» ZPOSMASK; 


extern COMPI£X clog(); 


return (value. dval) ; 


extern COMPI£X crept); 


) 


extern COMPIZX csin(); 




extern COMPI£X csinh(); 




extern COMPI£X csqrt<); 




extern COMPI£X ctanO; 




extern COMPIZX ctanhl); 




/* 

* Define all recognized test functions. Each function 




* must have an entry in this table, where each 




* entry contains the information specified in the 




* structure "test". 
V 
struct test 






t /* Structure of each function to be tested 
*/ 

char *name; /* Name of the function to test 
*/ 





68 Micro Journal 



March 88 



13 



COMPLEX («func) (); /« 


Pointer to the function's 


struct test *testp; /* Pointer to function 


entry point */ 




test */ 


double max_err; /* 


Error accumulator for this 


struct test 'lookup (); /* Returns function test 


function */ 
); 




pointer */ 

register char *strp; /* Pointer to next token 
in string */ 


static struct test tests [] 


- 




( /* Table of all recognized functions */ 


ENTER ("dotests"); 


"cacos", cacos, 0.0, 
V 

"casin", casin, 0.0, 


/* Conplex arc cosine 


while (fgets (buffer, slzeof (buffer) , stdin)) 
( 


/* Complex arc sine */ 


strcpy (function, "(null)"); 






argument .real - argument . imag » 0.0; 


"cat an", cat an, 0.0, 


/ * Complex arc tangent 


expected. real » expected . imag - 0.0; 


•/ 




sscanf (buffer, "ts %le tie tie tie", 


"ccos", ccos, 0.0, 


/* Complex cosine */ 


function, (argument. real, (argument .lmag, 


"ccosh", ccash, 0.0, 


/* Complex hyperbolic 


(expected. real, (expected. lmag) ; 


cosine */ 




testp « lookup (function); 


"cexp", cexp, 0-0, 
■/ 

*clog", clog, 0.0, 


/* Conplex exponential 


if (testp ~ NULL) 
( 


/* Complex natural logarithm 


fprintf (stderr, "ts: unknown function 


*/ 




V"ts\".\n", 


"crcp", crcp, 0.0, 
•/ 

"csin", csin, 0.0, 


/* Complex reciprocal 


argv(0], function); 
} 
else 


/* Complex sine */ 


"cslnh", csinh, 0.0, 


/* Complex hyperbolic 


( 


sine */ 




result - (*testp ->func) (argument) ; 


"csqrt", csqrt, 0.0, 
*/ 

■ctan", ctan, 0.D, 


/* Complex square root 


if (vflag) 

{ 


/* Complex tangent */ 


printf ("tsltle + j tie) Vn - t30.231e 






+ j t30.231e.Vn", 


"ctanh", ctanh, 0.0, 


/* Complex hyperbolic 


function, argument .real, 


tangent */ 




argument .imag, result. real. 


NULL, NULL, 0.0 
V 

); 


/* Function list end marker 


result .lmag) ; 
) 

if (expected. real II expected. lmag) 
r 




/• 




i 

error - csubt (result, expected); 


• main entry point 
♦/ 


for c2c test utility 


error - cdiv (error, expected) ; 
t 
else 




main large, argv) 




( 


int argc; 




error — result; 


char *argv[]; 




aba err - cabs (error); 


ENTER ("main"); 




if (labs err > max abs err) I I eflag) 


DEBUGWHO (argv(Ol); 




( 


options targe, argv); 




fprintf (stderr, 


dotests (argv) ; 




"ts: error in \"ts\"\n", argv[0], 


statistics (); 




function) ; 


LEAVE 0; 




fprintf (stderr, 


> 




"\treal (arg) \t\tt25.201e\n", 
arcnuent .real) ; 


/* 




fprintf (stderr, 


* detests process each test from stdin directives 


"Vtlmag (arg) U\tt25.201eVn", 


V 




argument . imag) ; 

fprintf (stderr. 


dotests (argv) 




"Ureal (result) \tVtt2S.201e\n", 


char *argv[]; 
1 




result .real) ; 

fprintf (stderr. 


char buffer [256]; 


/* Directive buffer «/ 


"Vtlmag (result) UVtl25.201e\n", 
result .imag) ; 


char function [64] ; 


/* Specified function 


fprintf (stderr. 


name */ 




"Ureal (expected) UUt2S. 201e\n", 


COMPLEX argument; 


/* Specified function 


expected. real) ,- 


acgument */ 




fprintf (stderr. 


COMPLEX expected; 


/* Specified expected 


"Vtlmag (expected) Vt\tt2S.201e\n", 


result */ 




expected. imag) ; 


COMPLEX result; 


/* Actual result */ 


) 


COMPLEX error; 


/* Relative or absolute 


if (abs_err > testp ->max err) 


error */ 




( 


double abs__err; 


/* Absolute value of error 


testp ->max err — abs err; 


*/ 




} 
I 



14 



Mat* "88 



68 Micro Journal 



) 

LEAVE 0, 



options process comnand line options 



options (argc. argv) 
int argc; 
char "argvtJ; 
( 

register int flag; 

extern int getopt 0; 

extern char "optarg; 

ENTER ("options"); 
eflag - sflag - vflag - FALSE; 

while {(flag - getopt (argc. argv. "I:el :sv") ) !■» 
EOF ) 
I 

switch (flag) 

I 

case '•' : 

DEBUGPUSH (optarg) ; 
break; 
case 'e' : 

eflag - TRUE; 
break ; 
case " 1' : 

sscanf (optarg, "lie". 4<nax_abs_err) ; 

DEBUG3 ("args". "roax_abs_err - %le", 
max_abs_err) ; 

break; 
case *s* : 

sflag - TRUE; 
break; 
case "v* : 

vflag - TRUE; 
break ; 
I 



) 

LEAVE 0; 



loopup lookup test In known test list 



struct test 'lookup (funcnaire) 

char •funcname; 

( 

struct test 'testp; 

struct test 'rtnval; 

ENTER ("lookup") ; 
rtnval ■ (struct test *) NULL; 
for (testp • tests; testp ->name U Frtnvaf; testp++) 



If (!strcftf> (testp ->name. funcname)) 
( 

rtnval - testp; 





LEAVE <); 




return (rtnval) ; 


1 




/♦ 





statistics print final statistics if desired 



statistics 
I 

struct test *tp; 

ENTER ("statistics"); 

If (sflag) 

( 

for (tp « tests; tp ->name; tp++) 

( 



tle\n". 



< 



prlntf C»s:\tiMxl»uni relative error 
tp ->name, tp ->max_err) ; 



LEAVE , 



EOF 



FOR THOSE WH 




68 MICRO 
JOURNAL 7 



66 Mao Journal 



Marc* '86 



15 




A Tutorial Series 



By: Ron Voigts 

2024 Baldwin Court 
Glendale Heights, IL 



SOLVING YOUR DEBUG PROBLEMS 



Last month I dealt with the 
"bugs" in programs. Debugging 
a program is probably one of the 
most important aspects of being 
a programmer. As many of you 
know I am an engineer by profes- 
sion. So besides dealing with 
software, I also deal with hard- 
ware. I have worked on many 
hardware problems. Even the 
best designs do not always work 
the first time out. (Or the second 
time . or the third time. ... ) 
Trouble shooting a circuit in- 
volves walking through it step- 
by-step. It Involves injecting 
signals to try a particular portion 
of the circuit. And many times, it 
means using some pretty sophis- 
ticated instrumentation. 

Trouble shooting software is 
in many ways the same. It in- 
volves walking through the pro- 
gram. It is the changing program 
parameters to check a particular 
function. And it means using 
sophisticated tools to solve prob- 
lems. 



One of the best tools I have 
seen is a sharp program called 
SOLVE™. SOLVE is an acronym 
for Symbolic Object/Logic Verifi- 
cation and Examination. It al- 
lows software to be examined, 
tested and debugged. With it 
memory can be displayed, al- 
tered, and moved around. It also 
will assemble and disassemble 
code. Symbols and expressions 
can be used for labels and vari- 
ables. It has 6 basic modes. They 
are: 

1. Monitor commands 

2. Assembler 

3. Disassembler 

4. Environment commands 

5. Execution commands 

6. Miscellaneous 

It would impossible to cover 
everything it does. To do that I 
would be writing a manual and it 
already has fine one with it. But 
I will tell you a little about them 
and Illustrate some applications. 

Under Monitor Commands are: 

M - Display memory 

C - Examine and change memory 

? - Fill memory 

? - Search for bytes 

X - Transfer memory 

- - Calculate expression 



I find that many times I will 
want to alter a module. Device 
descriptors are a good example. 
Say I have a descriptor DO. It has 
a stepping rate of 30 mS. Ihis Is 
is much slower than I would 
prefer. I want it to be 3 mS. So 
I enter SOLVE. I find DO with: 

DBG: L DO 
87ED 87 . 

At olfset $14 (of the device 
descriptors the byte for disk 
speed. It Is $00 which is a speed 
of 30 mS. I want to alter thls'to 
$03 to give me a speed of 6 mS. 
So I will use the change com- 
mand. 

DBG: C S87ED+S14 
8801 00 . 

My cursor restsjust after the 
dot. I have a few options avail- 
able to me. With a + or - I can 
move forward and backward 
through memoiy. A simple car- 
riage return will peimlt me to exit 
back to debugger command 
prompt. An = followed by some 
expression will move me to a new 
location In memoiy. But I prefer 
to change this byte. So I enter a 
space which says that I am 
changing this location. So the 
next sequence appears: 



16 



March '88 



68 Micro Journal 



eeoi oo 

8802 20 
DBG: 



?S03 



Notice the question mark. 
Tills Is the prompt to enter a byte 
replacing the one that is already 
there. 

If I want to make a perma- 
nent version of this I would use 
the following sequence from OS- 
9. 

0S9: save /dO/nodules/dO dO 
OS9: verify u </d0/modules/d0 

>/dO/modules/dO . tenp 
0S9: del /dO/modules/dO 
OS 9: rename dO.tenp dO 

This series of steps save DO 
to a directoiy called MODULES, 
where other modules are stored. 
It corrects the CRC of the module 
creating a new one call 
DO.TEMP. The original is deleted 
and the temporal y one is re- 
named to the original name. Now 
I can use OS9GEN to create a 
new system disk with the faster 
stepping rate. 

Next Is the Assembler. It has 
a number of directives. Some of 
them are: 

A - Assemble command 
R - Read lable file 
W - Write label file 
P - Print symbol table 

It understands psuedo op- 
codes like ORG, OS9. and EQU. 
It has a single pass assembler 
that anticipates all the labels and 
symbols that have been as- 
signed. It Is not a full blown 
assembler, but it Is handy for 
changing code on the fly. 

A small example is in order. I 
have an area in memory which is 
reserved. I won't go Into how this 
area was obtained, but It Is there. 
From solve. I enter. 



DBG:C SA000 






A000 


00 . " 


HELLO 


THERE! 


A00D 


00 . S 


0D 




A00E 


00 . 







This little sequence plants 
•HELLO THERE!" starting at 
$AOOO and terminates It with an 
end-of-llne character. Now I 
have stored my message. I will 
create some code to print it. 



DBG:J 


SA100 




A100 


WRITE LDX 


ISA000 


A103 


LOY #$0£ 




A107 


LDA 101 




A109 


I$WRIT FN 


$6A 


A109 


OS 9 I$WRIT 


A10C 


RTS 




A10D 







The last line has no entiy. A 
cairlage returns terminate the 
entiy procedure and assembles 
the code. I haven't touched on 
how to execute the code. That 
will be coming. 

One of my favorite features Is 
the disassembler. I find many 
uses for It. Usually when I come 
across an OS-9 module of inter- 
est. I will use Solve's disassem- 
bler to see what makes It tick. 
Here Is an example of using It on 
the code from before. 

DBG:0 SA100 SA10D 
A100 WRITE LDX #$A000 
A103 LDY #$CE 
A104 LDA #$01 
A109 OS9 I$WRIT 
A10C RTS 

Notice how the code looks 
veiy similar with a few differ- 
ences. It prints all the numbeis 
In hex. And It did not include the 
line where I use 'FN*. This line Is 
not a part of the assembled code, 
but rather It tells SOLVE that 
I$WRIT Is equivalent to $8A. 
Besides disassembling. It also 
has a history function. Entering 
an 'H' will display the last 32 
Instructions that were executed. 
They are displayed disassembled 
when the trace mode or program 
simulation Is being used. 



Now comes the environment 
commands. These are used to 
alter the current conditions that 
influence a program. They in- 
clude: 

V - Define memory variables 
: - Examine/change user stack 
B - Set and display break points 
K - Kill break points 
* - Print stack contents 
8 - Change current nesting level 
N - Set mBxinum nest tracking 
level 

I frequently use breakpoints 
when debugging programs. They 
provide a means to stop execu- 
tion at a particular point. Imag- 
ine a runaway program. I have 
had a few of them In my time. I 
entered the modules name and It 
would load from the disk. And 
then nothing! Just silence as the 
computer sat there while it was 
stuck in an endless loop or some- 
where In memoiy where no man 
has gone befoie. Many times 
things did happen. The printer 
would start spewing out non- 
sense. Strange graphics would 
appear on the video screen. The 
disk drives would whirl and 
click. Whatever was happening 
It was not good. 

With breakpoints, the code 
can be executed In parts. It Is a 
good Idea to have a listing avail- 
able. It will show the code and Its 
offsets. I want to run a program 
called MYCODE and stop it be- 
fore it runs amok. Perhaps the 
location I want to stop It at Is 
$0900 relative to the start of the 
module. I would pre-load It Into 
memoiy and then enter SOLVE. 
I would use the following se- 
quence. 

DBG: L MYCODE 

A000 87 . 

DBG: B SA000-fS0900 

A900 



68 Micro Journal 



March '88 



17 



These lines link to MYCODE and set a break- 
point at $A900. This is the actual location. I want 
to stop. Now when I execute it . it will stop at $A900 . 
IT I enter B by itself, a listing of all the breakpoints 
would be displayed. Using the K command will 
remove any or all of them. 

To be able to run the module from SOLVE 
requires the Execution Commands. They are: 

L - Link to nodule 

E - Prepare module for execution 

T - Trace instructions 

G - Run program 

S - Simulate program 

I find the L command to be handy for linking to 
modules that I want to examine. It gets the address. 
For Level 2. it maps the module into SOLVE's 
memory area. 

The E command Is a little more useful, when 
actual execution Is desired. It also (Inks to the 
module, but it also sets up the stack area. This 
means setting up lhe registers for memoiy require- 
ments, parameter area, direct page and some other 
things. It is worthwhile to note that module and its 
data area are placed in SOLVE's memoiy area. This 
Isolates It from the system and other processes. 

G is used to start things again. Whatever is in 
register PC is executed . What Is in PC is a result of 
using E, a breakpoint, a keyboard interrupt, or 
what has been place there from SOLVE. 

Finally is the miscellaneous commands. They 
Include: 

$ - Pass command to OS-9 
Q - Quit SOLVE 
! i- Set program base 
< - Set data base 

Remember before how I linked to a module and 
got its location. Well. I could have set the program 
base. Then everything I did could be oflset from the 
base location. As an example, look at the break- 
point setting. 



DBG: L MYCODE 

A000 87 . 

DBG: !$A000 

A000 

DBG: B !$09C0 

A900 

This is like before, but the line where !$A000 
occurs sets the base to $A000. Now when I set a 
breakpoint ustng the 1 1 can reference It to the way 
it appears In the code. Anything else I do with the 
code can be handled using the offsets, lhe < is used 
for setting a base for the module's data area. 

SOLVE Is a super debugger. There is so much 
more that I haven't covered. If 1 tried to cover it all, 
I would be writing amanual. That has already been 
done and It does an excellent job of covering things. 
! And that not a week goes by when I don't use It. I 
have to say this is one fine debugger. (And the price 
ain't bad either! ) 

CHECKING THE PATHS 

There Is an Interesting command in UNIX. It Is 
called FILE. When FILE Is entered and a path 
follows It. it returns a message whether it is a 
directory or file. It is not a profound command, but 
it has its uses. 

I decided to try my hand at wilting one also. If 
the convention of creating directory names In upper 
case and flies In lower case Is followed, this com- 
mand should not be necessary. Unfortunately this 
Is not the case. I have received disks where every- 
thing was in uppercase characters. I have seen 
others where the case is mixed. Therefore, this 
month I oDer a program called PATH. 

PATH takes a pathname and analyses. It prints 
where it Is a directory or a file. It also prints If it is 
a an SCF or RBF device. I have to admit there are 
a few definciencies with it. The major one is that It 
assumes whatever is not RBF must be SCF. This 
excludes Pipes and SBF ( Sequential Block File 1 
found in tape drtves. But taking this Into account, 
I believe you'll find it helpful. Please, improve on it 
If you wish. 



Well another month has come to an end. Come 
back next time! 



18 



March '68 



68 Mcro Journal 



LISTING 



printf ("\nPath: %a\n", 



0001 /* *************************** 

0002 

Name: PAT1I.C 
Date: 23-NCV-87 
Author: R. D. Voigta 
To compile: cc path.c 



0003 
0004 
0005 
0006 
0007 
0008 
0009 
0010 
0011 
0012 
0013 
0014 
0015 
0016 
0017 
0018 
0019 
0020 
0021 
0022 
0023 
0024 
0025 
0026 
0027 
0028 
0029 

0030 tinclude <stdio.h> 

0031 fdefine DIR 128 
0032 

0033 mini argc, argv ) 

0034 int argc; 

0035 char **argv; 

0036 < 

0037 register int i-0; 

0038 int j; 

0039 int err; 
0040 

0041 /* Put in help for program */ 

0042 if ( argc— 1 ) 

0043 helpO; 
0044 

0045 /* Process the pathnames */ 

0046 while ( ++i<argc ) { 

0047 j-acceas( argvfi], DIR ) ; /* 
Test for directory •/ 

0048 err-errno; /* Save the error 



*************************** 

Function : 

Returns the status of a path 
indicting whether it is a file 
or directory and whether it is 
a SCF or RBF type device. 

*************************** 

History: 

VOL 00 11/24/87 RDV 

Orignial. 



Osage: 

OS9 : path <path> (...) 

*************************** *> 



0049 
argv(il) ; 

0050 

0051 
DirectoiyNn") ; 

0052 

0053 
Device\n") ; 

0054 

0055 

0056 

0057 
DeviceNn") ; 

0058 

0059 

0060 

0061 

0062 

0063 ) 

0064 

0065 /* Help routine •/ 

0066 helpO 

0067 { 

0068 printf ("Syntax: path <path> 

0069 printf ("Osage: Returns information 
about the path."); 

0070 exit! ); 

0071 ) 



EOF 



if ( !1 ) 

printf ("Type: 

else if ( err~203 ) 

print f ( "Type : SOT 

else if ( err— 214 ) 

printf ("Type : File\n") , 
else if ( err — 221 ) 

printf ("Onknown 

else if ( err— 216 ) 

printf ("Bad Path\n"); 

else 

prerr ( 1 . err ) ; 



i 



FOR THOSE WHO 



MID TO K\OW 



68 MICRO 
I JOURNAL 



TM 



68 Moro Journal 



March 66 



19 



Pascal 



A 

Tutorial 



By: Robert D. RetmlUer 
CoUAcd SdftWMC Corp 
6l6Cwnlno CabaJJo 
Nlpoow. CA 03444 
H0S929 13S9 



This month we will take a look at an example of 
a VERY simple stand-alone program. This pro- 
gram has the task of reading the output of a 12 bit 
signed Analog to Digital (A to D) converter every 
10ms and updating a Digital to Analog (D to A) 
converter with this value. The routine slows 
down the response of D to A converter by only 
allowing it's value to change a small amount 
every 10ms. The input range of the analog volt- 
age in the test setup was between -2000 and 
2000, within the plus and minus 2047 available 
from a 12 bit converter. If the A to D changes from 
one extreme to the other, the D to A converter will 
take 4 seconds to make the full change. This can 
be calculated from : 

range/ ( (samples/second) * (maximum atep/aanple) ) 



In this example: 

4000 / {100 * 10) - 4000 / (1000) 



4 seconds 



This type of routine was used on a model train 
control system to prevent those who held the 
speed control (the A to D input) from making 
radical changes in the voltage to the train (the D 
to A output). Since I have done this, I can tell you 
it destroys the gears! 

The timer used is a MC68230 Parallel Inter- 
face/Timer (PIT). Looking at the listing, the 
structure of the PIT is defined on lines 6 through 
21. Record fields dl-d26 are dummy bytes, since 
the PIT is a byte wide device and the hardware is 
designed so the registers only show up on odd 
addresses, the even addresses must be skipped. 
The registers we are concerned with are the TCR 
(Timer control Register), CPRH-CPRL (Counter 
preload high-low), and the TSR (Timer status 
register). 



On line 22 the PIT we will be using (which is 
located on the CPU board, so we call it CPUPIT) 
is located at $e0001, the compiler calculates the 
correct address of all of the registers in the PIT. 
The D to A output number is an integer ( 16 bit 
signed) located at $ft0008 and has a valid range 
of -2048 to 2047 and is given the name DATA0. 
The ATOD.STATUS is a 16 bit value located at 
$90000, the most significant bit is one when 
there is data available. ATOD_DATA is an inte- 
ger located at $00002 with a range of -2048 to 
2047. ATOD_CHANNEL has the input channel 
as the lower 3 bits, and a strobe bit as the fourth 
bit, which starts a conversion. 

At line 31 we start the actual interrupt han- 
dler, the interrupt being generated by the 68230. 
Note that while in this procedure we compile 
with debugging information off, this avoids the 
unpleasant situation of the debugger stopping in 
this section of code, which it is not designed to do. 
This procedure is declared as an exception proce- 
dure, which means that it has all the special 
stack handling required to be called as a 68000 
series exception handler. 

The first thing the RTCIRQ must do is to clear 
the source of the interrupt, this is done by setting 
a bit in the TSR PIT register. It then makes sure 
that the conversion is complete by checking the 
most significant bit of ATOD_STATUS and wait- 
ing until it is a one. Since this A/D takes consid- 
erably less than 10ms to make the conversion, 
this step is really not necessary, but I'd rather be 
safe than sorry. Line 39 reads the value from the 
AtoDandsavesitin VAL Line40is used to start 



20 



March '86 



68 Micro Journal 



the next conversion by setting in the channel 
number and strobe bit into ATOD.CHANNEL. 
Lines 43 through 51 take care of making sure 
that the new value for the D to A is no more than 
MAXSTEP from the previous value, or the actual 
difference, whichever is smaller, with the new 
value being written into the D to A on line 52. 
Lines 53 through 55 show how you can make 
delay counters using a simple interrupt source. 
These delays can be set and checked in the main 
program to control when things happen. 

In the main program Lines 60-63 setup the nec- 
essary control registers for the timer so that it 
interrupts every 10ms. Line 65 starts an A to D 
conversion so that when the first interrupt occurs 
there will be valid data. Line 68 is inline assem- 
bly language code (signified by the ! at the start 
of the line) which is used to enable CPU inter- 
rupts by setting the interrupt mask to zero. Un- 
der the target debugger this is not actually nec- 
essary since it has already enabled interrupts so 
the link to the host system can work. Line 69 
enables the timer to generates interrupts. The 
main part of the program would go where line 7 1 
is. 

It is fairly easy to get a target program to work. 
For any amount of serious development work, it 
is best to get the target debugger to work, this is 
a program similar to the host debugger that was 
describedin a previous month. Instead ofloading 
the object code into the host computer, the target 
debugger loads code into the target system RAM 
via a serial link. A special set of EPROMS is 
burned to go into the target system which con- 
trols the serial link, and has the debug kernal for 
communicating with the host. This normally in- 
volves selecting the driver for the type of serial 
chip used on the target, modifying the addresses, 
vector numbers, etc., and burning the EPROMS. 
Drivers for your hardware may be available from 
computer manufacturers that sell OmegaSoft 
Pascal, but if they aren't, someone familiar with 
the specific target hardware and assembly lan- 
guage can fairly easily make the modifications 
necessary. After this is done, the target debugger 
works similar to the host debugger, such as 
allowing breakpoints, variable display and 
change, and instruction tracing. 

In order to setup the shell file for a target 
project, you need to use the linkage creator, very 



similar in use to what was shown for a OS-9 pro- 
gram in an earlier month. Instead of telling the 
linkage creator that you want "auto" setup, you 
answer no and you are then prompted for differ- 
ent information. For the example hardware, 
RAM went from location 8 through 7ffH" (loca- 
tions 8 through 3ff are for exception vectors). 
EPROM space started at location 80000. The PIT 
on the CPU board interrupted using autovector 
number 5 (vector 29). In the linkage creator : 

Ram start (heap start) : 400 

Ram end (stack upper limit) : 7ffff 

Parameter list address (enter if none) : 

Maximum vector number to initialize : 255 

Vectors in RAM ? Y 

Enter vector (low [-high J label : 29 rtcirq 

Enter vector (low [-high] label : 

Starting load location : 60000 

Library directory name : /dd/ 

Use default I/O library r /dd/os9io, ? N 

I/O library to use : testio 

The rest of it is the same as for a program to run 
under OS-9. The I/O library in this case is very 
simple, it simply defines an error handler entry 
point (which should never be called in this ex- 
ample) and end of the varib storage section, such 
as : 



testio 


idnt 


1,0 






Xdef 


.error 


varibend 


.error 


move 


IS2700 


91 




move.l 


0,a7 






move .1 


4,a0 






jmp 


(aO) 






varib 






varibend 


equ 
end 


* 





The stack setup file has all the code needed to 
transfer vectors from EPROM in RAM during 
startup. Any vectors not defined to be handled by 
the Pascal program or a device driver are set to 
restart the program by default. To run the pro- 
gram under the target debugger there is only one 
command needed in filer mode to set the excep- 
tion vector : 

<F> SV V29 rtcirq 

This tells the debugger to use the procedure 
rtcirq as the exception handler for vector number 
29. 



68 Micro Journal 



March '88 



21 



Next time we will 
start at the beginning, 
with basic data types, 
for both the 68020 ver- 
sion of OmegaSoft Pas- 
cal, and for an enhanced 
version of Modula-2 
planned for later this 
year. 

OmegaSoft is a regis- 
tered trademark of Cer- 
tified Software Corpo- 
ration, OS- 9 and OS- 9/ 
68000 are trademarks 
of Microware Systems 
Corporation. 

+++ 



1:0 progrea taet ; 

2:1 conat 

312 channel - 1 i |VD channal number) 

4:2 atroba - 8 ; (A/0 atroba bit) 

5 : 1 type 

6:2 pit - record 

7:2 P9cr, dl, parr, d2, paddr, d3, pbddr, d4 , peddr, dS, 

8:2 pivr, d6, pacr, d7, pber, d8, padr, d9, pbdr, dlo, 

pur, dll, pbar, dl2, pedr, dl3, par, dl4, nulll, dl5, 
null2, die : byta : 

tcr (tlaar control regiatar) : byta ; 
dl7, tlvr, dig, null], dl9 : byta ; 
cprh {counter praload high) : byta : 
d2 : byta ; 

cpra {counter praload aid) : byta I 
d21 : byte ; 

cprl (counter preload low) : byte 1 
d22, null4, d23, cntrh, d24, 
cntrm, d25, cntrl, d26 : byte t 
tar {tlaar atatua regieter) : byta : 
end : 
var 

cpupit : pit at SeOOOl ; 

dataO (aaoothed output voltage) : integer at $ff0006 ; 

atod_atatua : hex at SffDODO : 

atoddata : integer at Sff0002 I 

atodchannel : hex at $ff0004 ! 

output value, delay : integer 1 

(Sd-) 

procedure rtcirg l exception ; 
conat 

aaxatap - 10 : 
var 

val : integer ; 
begin 

cpupit. tar :- 1 ; (clear interrupt) 

while atod atatua and SB000 <> do ; (wait till ready I 
val :- ato3 data j {read A to D convertor) 
atod_channeT :■ channel ♦ atroba i {atroba it) 
{only allow a aaxiaua amount of 
change froa current output value) 
val :■ val - output value i 
if aba (val) > aaxatap 
then 

if val < 
then 

val :- -aaxatap 
alee 

val :■ aaxatap ; 
output_value :- output_value * val ■ 
dataO :- output_valua j 
if delay o 
than 

delay :- delay - 1 
end | 
{5d*) 

begin 

cpupit. tcr :■ SaO t ( aetup control regleter, interrupta off) 

cpupit. cprh !" I 

cpupit. cpra !■ 99 f 

cpupit. cprl :■ 9c4 ; {generate lOaa Interrupt) 

output value :■ x 

atod channel :■ channal ♦ atroba j 

dataO :- : 

delay :■ j 

I aove t$2000,ar enable interrupta ; 

cpupit. tcr :■ Sal j (enable tiaer interrupta) 

repeat 

{ aain loop, delay can be ueed for lea daley . 
until falae 
end. 
pllation Error., atack - 0000001A ayabol table left - 47. 2K 



9 
10 
11 
12 
13 
14 
15 

16:2 
17:2 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 

32:2 
33:3 
34:2 
35:3 
36*2 
37*3 
38*3 
39*3 
40*3 
41:3 
42:3 
43*3 
44*3 
45:4 
46*5 
47:6 
48*7 
49:6 
50*7 
51*3 
52*3 
53*3 
54:4 
55*5 
56*2 
57:2 
58:2 
59*1 
60*2 
61*2 
62*2 
63*2 
64*2 
65*2 
66*2 
67*2 
68:2 
69*2 
70*2 
71:2 
72*2 
73*1 
No Cob 



FOR THOSE WH 




68 MICRO 
JOURNAL™' 



22 



Mart* 88 



68 Micro Journal 



l©gi©ally 




Most of you will ran ember 
Bob from hi i seiici of letter* 
on X BASIC. If you like it or 
want more, let Bob or us 
know. We wtnt to give you - 
what you wanil 



The Mathematical Design of Digital Control Circuits 

By: R.Janes 

Mjcraucs Research Corp. 

33383 Lynn Ave., AbboOford, B.C. 

Canada V2S 1E2 

Copyrighted © by R. Jones 3l CPI 



I«t me say again that when decoding relays, the minterms (red numbers) are selected by (a) examining all Box 
Cs of the state-diagram to see when a particular relay is energised, (b) noting the black number in Box A of any 
such Box C. and then (c) scanning the flow-table for corresponding black numbers in Box A. Hie red numbers at 
these locations specify the minterms. 

Thus. In problem 2, Yl is energised (has a 1 In Box C) with a matching black 2 in Box A. 7ne flow-table has 
black 2s in Column black- 1, coirespondlng to red-2 and red-3. Problem 3, on the other hand, has a black-2 in 
three of Its Box-As. corresponding to ied-1. 2 and 3. 

When decoding for output devices, simply scan all Box Cs of the FLOW-TABLE itself, and pick off all red 
numbers corresponding to an energised or phi state for that device. 



I 



• 


1 


ll 


■ 1 





t 



^Oo 


1 2 


1 


l|o 


a|* 


o 


o 


o 


2 


III 


a|s 


i 


J 


i 



Y, 1 5 



a ■ 



I 



I «0~ - 4 ftloy 

Li - X 



L, 



*-5-5-CP-* 



l|o 




2|l 


o 




i 



2 »«t 
next 



I *)« 



I X>3 

szzin 

Li l IT 



Iha juvvTmi IW x J.V r«|-«j»* Ll To #hrifeh ttrectty. 



Ll I 3 



» 1 

Li 



x y 




A 
\ 


©e 


1 2 






1 


l|o 


l|z 




i|o 




1 


o 


o 










i 


2 


ah 


a|s 






i 


i 


i 





V, ' * 3 



X I 



JL 



I 



Ll I a 3 IX J. 

""* 2 1 



I 



Y.»x+y, 





O 


1 


2 


3 


Y, 




1 


1 


I 


L, 




1 


# 


1 



t5M 



OP ceuria, at l**» 'is no ntttfaehon on&£ acilv«tian of Li, euwl at Li =yi, Ken 
Li ceutd s'«nfjy be •0«*elad «V*rfy In parallel w'lttv Y, itself. 



*) 



'< 


©0 


1 2 






1 


l|o 


a| 2 




l|o 




a!< 


o 


o 


o 


o 




i 


a 


a|i 


a|? 






i 


i 


o 










I 


2 


S 


Y, 




I 


1 


I 


L ' 




I 







X somr asm 3 akaM 
Y,= X + y, 



1 1 
Li I I X jf. 



>|0 I 
L, a X'vi 




68 Mcro Journal 



March "88 



23 



< 


O o 


t 


t 


1 


i|o 


a * 


o 


co 


00 


1 


3 


i 


a 


5- 


1 


00 


10 


3 


III 


**\ 7 


3 


oo 


Op 


H 


tl 2 


*!* 


2 


Of* 


o\ 



Li t_&_$l£jk g 



i o «p 



L, m f js <* - Xj 



<p o 



1 


c 




a 




oo 




Ol 


h J 




if 


1 


^ 3s 


I 







1 


1 



nf* f 


«► i 1 


** * 


* l C 


x 1 


1 1 £> 





o 


( 


1 


s 


f 


ffU 


7 


Y, 




1 




1 




1 J 


1 


*» 


1 1 


l« 


1 


1 ■ 




L, 










1 




U> 


*> 






_!_, 


* 



La-Jf'y* o* - Xy. 




Because the atate-dlagiam is exactly the same as that of Diagram 18 of an earlier lesson, the RELAY control 
circuitry will also be the same, the decodlngs appear In Diagrams 21 and 22. viz 

Yl - Xyl + JCy2 and Y2 = Xyl" + Xy2 



Note that the decoding for LI begins with an 'x' under mlntenn-5, which is the first absolute mlnterm. 1 and 
4 are both phis, so we use them only if necessary to optimise our decoding. Similarly with L2. which commences 
at mlnteiTn-6. Note too that there are two possible decodlngs for each light. Taking LI as an example, we begin 
with mlnterm-5 and ask "Is 5 - 4 ■ 1 available? Yesl". so the 1 in column X gets changed to a phi and a 4 Is 
placed under minterm- 1 . (Why?) Then "Is 5 + 2 - 7 available? No! So how about 5-1-4? Yes, but we can't 
complete the run because 1 - 1 « Is not available." 

We'll elaborate on all this later, when we move on to a more comprehensive system, but for now we'll Just try 
an alternative decoding, and begin by checking off the bit-position which blocked us in our ilrst attempt. That Is, 
we'll put an 'x' under mlnterm-5 as before, but begin by asking "Is 5 1 ■ 4 available? Yes, so we'll check off 
mlnterm-4. and change the 1 In column y2 to a phi." Then well go to the highest blt-posltlon, and ask "Is 5 - 4 « 
1 available? Yes. but 4-4-0 Isn't, so we can't complete this run. Also 5 ♦ 2 ■ 7 Is not there, bo we're all donel" 

Sometimes the alternative decoding Is useful In case the remainder of the circuitry has used up all the 
available contacts on a particular relay or push-button. 





XOo 


'A 


1 


l|o 


a|« 





oo 


*o 


3 


||l 


i|s 


i 


0O 


\o 


5 


Z\i 


M? 


3 


oo 


o4 


* 


3|' 


«rl* 


2 


of 


01 



ik 




a 


I 


oo 




Ol 











*h 




3l3 


lO 




M 



— ' 






3 


U 


r U 


7 


Yi 




, 


1 


! 




li 


1 


<4 




1 


1 


1 


1 


i 






Ui 




* 






* 


i 






-1 






It 




I— 






t 



Yi i a 3 fc 7 


•» a i 
X ji ,a 


* a 


o 4> i 


* t * i 


i $ 



i a 3 <♦ 5" 


• X 1 


a * 


O 1 


a i 


o i 4> 


K 1 


I 



Ya x yya -fXyit-X/ 
Note, in this oaunple, that because the state-diagram Is dilferent, the relay controls will be different. 



How- 



ever, the outputs. LI and L2, repeat the pattern of Problem 6, and the preliminary table shows that their decod- 
lngs will therefore be the same. I'd like to draw your attention to the fact that Sections A of the last two rows of 
the flow-table are Identical (te, 3.4) and to recommend that you try this problem once more when youVe mastered 
the subject of MERGING, which we'll deal with in the next stages of our Journey, where we'll be learning an 
enhanced technique for designing sequential circuits. This will help you to appreciate to the full the Importance 
of MERGING, and the extra phis It creates for usl 



24 



March '88 



68 MtCfO Journal 



As of now. I'll leave the drawing of the circuit-diagrams to you. I figure that by this time you should experi- 
ence little difficulty once youVe decoded the Boolean algebraic expressions for the various devices. 



D. 



:Oc 



1 


l|o 


ll* 





CO 


Co 


2 


3|> 


*\S 


i 


io 


\o 


3 


3J3 


* 7 


3 


\o 


i« 


t* 


*l* 


*l 6 


2 


li 


11 



I *■ 



Wo 



oo 



■m 



+ 


3 




•|3 


IO 




ii 





o 


t 


a 


3 


«* 


£ 


£ 


7 


f, 




r 


i 


l 






1 


1 


ta 




i i 


i 


■ j ' 1 




l-i 




i 


i 


I 


1 


1 


LJ 






i 








1 






4 
i l * «■ S" 4 7 


» a. i 
X jpi ya 


* 2 W 3 


tf 1 


XI *- 1 


# 1 



s> 



Jl-rya 



Ya CS«»* «t In 5"} ■= Xy * X ya 

£ .** * ' 

U ? 4 7 X Jti_X J . 
x <» T ? I O 



La = yijl' 



^QO | l i 



a 
i 

3 
5 
** 

2 



m 



oo 



tfio 



m 



m 



o<p 



aR 



oo 



ID 

Ml 



00 



3U 



o: 



1 jo 


^ all 


oo 




01 




t 




1 


i 


4 


2 




3 


3 


IO 




11 



-f. 



"<! 



Ul 



rrrii 



w 



**■ s 



I . 



f, (So~* °t pnkWS) ■ Xji'+Xja 



la 1 5 Jt 6 


*r 1 ■ 


it 1 


O 0) 1 


x 1 


1 o 



Ya - X ja+ Xja 



■ 5 


- X 1 

X yi fj 


u % 


<P O 1 



rjljfl 



i 






A > <T I O 



La ■ y'ja 



Oo 



oo 



ID 



go 

ITS 



oo 



*u 



oi 



I * 



00 



in 



IO 



«? 



oo 



si 



OI 



l|o 




»;■ 


oo 




O! 








r 


*l» 




3 


3 


IO 




ii 





o 


' 


a 


3 


tt 


S 


6 


7 


* 




1 


i 


1 






1 


1 


n 




1 




1 


1 




1 




Ll 




«s 








I 






ln» 






i 








1 





Yi CSa-x a* 6) ■ Si* Xua 

YaCS«~e«1> «*Va + Xya' 

UC ■ ■ O =■ yV, 

Lit - » •> ■ y'ja 



*, 



* 








1 


flr 


1 


1 


a 


» 





00 


00 


2 


3 


1 


1 


s 


1 


eo 


10 


s 


3 


3 


* 


7 


3 


00 


00 


A 


h 


X 


3 


6 


2 


10 


o.| 



L-i 1 1 S 



» a 1 



* o 



l|o 




a|' 


00 




1 








' 


*U 




3 


3 


10 




11 



U A 



X vi 



l« 


1 


a 


3 


t* 


S 


t 


7 


* 


1 


1 


1 






1 


1 


Ya 




[ 




1 


I 




1 




Ul 




f 


1 






1 






La 














1 





Yi «-<4 S3. S** «9 U p .-.bW> 1 



Li =* X'y 1 y a ' + » , 'j a 

La at Xjtya 



68 Micro Journal 



March '88 



25 



1 





o 


I 



Mile 7 - heading for Mile S 

After all that, IVe almost lost track of where we were. Ah, yesl I remember - we were going to let Uncle Fird 
tell us how he escaped from the M'bul-yans. Over to you, Uncle Fred!! 

UNCLE FRED'S STORY 

Well, like I said earlier, I knew that If 1 could only map my situation I'd got It solvedl Problem was, how to 
map 111 Veiy difficult - veiy, VERY difficult when you're as emotionally Involved In It as I wasll Anyway, I decided 
to draw a little K-map so (here he scratches Diagram 25 In the dust), where S equals 'statement' and D equals 
'death' (shudder!) 

Sfeke o 

Crocs I 

Diagram 25 

In square 00 (Statement Is false, death equals stake) I put a 1 to Indicate that this was POSSIBLE. In square 
1 (Statement Is true, death equals stake) I put a to Indicate IMposslble. And so on for Row 1. So ... there was 
my situation all mapped out. but how was that going to help me formulate a statement for I-asku? Then It hit 
mell I decided I'd rather create an IMposslble situation than a possible one, so I Just picked one of the 0-squares, 
the one at location 10, and read off the co-oidlnates. Just as with any regular K-map. This translated as "Ihe 
statement Is true (that) I shall be burned at the stake" which I shortened to a more positive "I SHALL be burned at 
the stake!" Of course, I could Just as easily have chosen the other 0-squaie at location 01, and read It out as The 
statement Is false (that) I shall be thrown to the crocs* which would shoiten to "I shall NOT be thrown to the 
crocs!". And that did the trlckl Back to you. Uncle Bob, and thanks for Indirectly saving my life!! 

REMEMBER THE ABOVE! YOUR LIFE could DEPEND ON IT ONE DAY! 

Can you see why such a simple remark put 1-asku In such a predicament? If not, tiy considering things from 
the ancestors' viewpoint If I-asku were to cany out either of the only two forms of execution allowed. 

Uncle Fred, 1 think you should contact Aunt Minnie as soon as possible before she spends ALL your 95 
dollais. though I have a feeling you may be too late, as you've been "lost* for several days, so let's get back to 

THE SYNTHE8IS OF SEQUENTIAL CONTROL-CIRCUITS - AN ENHANCED TECHNIQUE 

The rules we've learned In the previous Lesson cover the bastes of Ihe design process, and having had a fair 
amount of practice with the problems of TEST 7. we're ready now for a refined technique, and perhaps a slightly 
more complex problem. So. without fuither ado, let's assume that we've Just received the following set of specifi- 
cations from a customer : 

Ihe machine Is to consist of three lights. LI. L2 and L3 (all Initially OFF), and two pushbuttons. XI and X2. 
Interlocked so that they cannot be operated simultaneously - - le, the condition XI. X2 » 11 Is IMposslble. Each 
time XI Is operated AND released, the lights are to come ON In the order LI only (first press and release). L2 only 
(second press and release) and L3 only (third press and release). Once L3 Is ON, subsequent operations of XI to 
have no fuither effect. However, If X2 Is operated and then released, the lights will move back by one position, 
and do thts cyclically. That is. commencing with (say) L3. successive operations of ^t will cause It to cycle In the 
order L3 only, L2 only, LI only, all OFF. L3. L2, LI etc etc. The push-buttons may. of course, be operated In any 
random order. 

THE FLOW-TABLE 

Ihe (list step, as before. Is to draw up a flow-table (see Diagram 26) with the prlmaiy-control columns headed 
00. 10 and 01. 1 1 Is not Included as this represents an Impossible phi-state. At this stage we don't know how 
many rows we're going to need, so we'll Just add them on as we go along! 

2$ March '88 68 Micro Journal 



Diagram 26 



-< 




IO 


c 


'1 


1 






2 




•1 




ooo 


OOO 


ooo 


2 


*l 


2 










$oo 


ooo 




3 


3 




^ 




9 






IOO 


loo 


IOO 


* 


S 




4 










Wo 


IOO 




S 


r 




6 




10 






OIO 


OIO 


OIO 


6 


7 




6 










o** 


010 




7 


7 




7 




11 






OO I 


001 


OOI 


« 


7 I 


1 


s 






ao4 




ooo 


* 


l| 






q 






$oo 




100 


10 


3 








to 






$0O 




OIO 


II 


y 








III 




oW 




OOI 



Initially the machine Is at rest, with all lights OFF. so address 00.1 Is allocated a black- 1 to maintain stability, 
and an all-zero entiy In Box-C to keep all lights OFF. The first OPERATION of XI takes us to address 10.2, with 
all lights still OFF. and the first RELEASE of XI then moves us to address 00.3. which Is a stable state with LI 
alone ON. Note that because LI alone Is changing state while It transits via address 00.2. this address specifies 
Ll as a phi. We'll decide later whether to activate It right here, or leave it 1111 a split-second later at address 00.3. 
depending on how the decoding turns out. 

The second OPERATION of XI takes us as far as address 10.4. with the outputs held constant at 100 In order 
to maintain Ll ON and the other two OFF. and the second RELEASE moves us to address 00.5 (stable), with an 
output entiy of 010 to switch Ll OFF and turn L2 ON. In Box-C of address 00.4 we enter a pht for both lights Ll 
and L2. as they are BOTH changing state across this "elbow". 

The third OPERATION of XI brings us to address 10.6. with L2 maintained ON. and the third RELEASE 
moves us to address 00.7. with L3 alone ON. and an entry of phi for L2 and L3 In the elbow address 00.6. as both 
are changing state here. 

Keeping In mind that we're not to proceed beyond L3 In the "UP" direction, so the fourth operation of XI 
simply keeps us In Row-7 with L3 held ON. Obviously, any further OPERATIONS or RELEASES of XI cannot 
move us out of this row. and we are stuck there with L3 ON and the other two OFF. All the action so far Is 
contained within the heavy lines on the How-table. 

NOW FOR XI 

So much for XI . Now let's transfer our attention to X2, and. commencing at address 00. 1 (all lights OFF"), 
assume that we OPERATE X2. We know from the specs that we should come to rest with L3 ON when we later 
RELEASE )K. so It would seem natural to Insert a black-7 In the elbow 01. 1 and then move to address 01.7, so 
that when )K Is released we would be In address 00.7 with L3 ON - - exactly as specified. 



66 Micro Journal 



March '88 



27 



BUT. Row-7 would then be a completely stable row (with black-7 In all tts Sections A). LEAVING US WITH 
ABSOLUTELY NO WAY TO MOVE OUT. This would be OK If the specs called for a termination at L3 no matter In 
which direction we cycled the lights, but this ts not so In our easel We must theiefoie be a little more subtle and 
move Into address 00.7 by the back-door as It weie. and leave the front-door (at address 01.7) open as an emer- 
gency exit. 

The way to do this Is to send ouiselves down to address 01.8 when we OPERATE X2 (still keeping all lights 
OFT) and move Into 00.7 via the elbow at 00.8. with L3 a phi on the elbow Itself, as It's changing state here. How 
about that for a crafty manoeuvre? 

Next we'll assume that we're at address 00.3 (with LI ON) when we decide to OPERATE X2. We'd like to move 
from the elbow 01.3 to address 01.1. so that when we RELEASE Xi we'd end up at 00.1 with all lights OFF. 
Unfortunately, address 01.1 specifies that LI goes OFF here, where we wish to maintain It ON. In addition. Its 
Box-A Is coded to send us Instead to a final "L3 only ON* state, so we adopt the same tactics as before and 'sneak 
In" to 00.1 via row 9. Our elbow 01.3 will therefore have a black-9 entered in Box-A and we'll end up at addiess 
01.9 with LI slill ON. When we RELEASE X2, the entry of a black- 1 in 00.9 will send us up to 00.1 and a corre- 
sponding all-zero condition for the lights. The elbow 00.9 will, of course, have a phi entiy for LI. 

Similarly, commencing at 00.5 [L2 alone ON), we cycle through Row 10 Into address 00.3 (LI alone ON), and 
finally, commencing at our problem-row 7 (L3 alone ON), we cycle through Row 11 Into 00.5. Note that both of 
these movements call for a double-phi entiy In the elbow- address, or unstable location. At this point we've 
successfully translated the specs into a flow-lable which accurately follows the sequences called for. 

IT CANNOT BE TOO STRONGLY STRESSED THAT IF ANY DOUBT EX1S1S. AT ANY TIME. AS TO THE CYCLING 
ON THE FlJOW TABLE. AN EXTRA ROW SHOULD BE CREATED AND THE ACTION CYCLED THROUGH THIS ROW. 
The next stage of the synthesis procedure, which I'm afraid we'll have to leave till the next leg of our journey, will 
AUTOMATICALLY eliminate any surplus, or redundant, rows which you might so create. 

As It stands right now, with 1 1 rows, the flow-table tndlcates that we can Implement this circuit with four 
relays. Three Isn't enough, because 2 to the power of 3 equals 8. and we could only cover 8 rows. On the other 
hand, 2 to the power of 4 equals 16. which would leave 5 unused rows tn a 16-row table. This means S rows of 
phi-states, and we know how we love those little phis, don't we? In addition, we've already got a whole phi- 
column, namely column 1 1. PLUS a random assortment of phi-states [addiesses Into which the flow-table doesn't 
cycle) In columns 10 and 01, which should help us considerably In our decoding. 

First though, we'll take a look at MERGING, which I mentioned earlier, to see whether It's possible to reduce 
the number of relays, or. If not, maybe we can at least create a lot more phis to play with. 

Unfortunately, IVe used up my allocation of space for this month, so we can all take a much-needed break till 
next lime round. No tests for you this time. I'm afraid, but don't worry too much about that. Maybe we'll make 
up for It later!! 

... End of Mile 7 

Correction to solutions to test four 14): 
(vlll) should read: a'bc'+bc'd+a'd+b'c 

EOF 



FOR THOSE WHO 



NEED TO KNOW 



68 MICRO 



(JOURNAL 



m 



26 



March 88 



68 Micro Journal 



■hlcplionc: (6 1 5) #42 -4biX) SOU tfl 'LOS t Mcdld 

QS-9, tlni'J L'LX, \f C'£X S:\ V* £ 

somi'wE 

.',',' iictkic Specify ') Imri hvrtitui,} Stjs tent aiuf'l Hsk Site ! .'.' 



TdnG SHMlMyMi 



Sculptor 



Full OEM & Dealer Discounts Available! 



ncscuuTOfisvsTCM 

V ajfcfl n i u»^Mf 4 dcmvM hjfW pw^i n brtaTuav 

fnfctfMy W* VufciM youl M ** *ft« uwt to w»- 

a woafli can b« «,h*w.iir<hai^>^*rt 

AN EST ABUSrCD LEADER 



the package 

Wfc my iWn lit |wwl t^i— ym « 



DATAWCnDNAHV 
l*ti *»> »■*** h»« m vti 






gwybcAv 



B 



IN! 4 KlNi II ( rfMd I 

V ufc* » u np awn . • rl *** *Msn < * 

>f ■*' ' *■&*** h I 'm 



INPUT CWTAVALfflATXJri 



KFIAHOIW f#l HAH JRS 



* **£ - »bq*pN* (W .nri M.« J ~M«, .V*™ ■ ■ ■ i ■ - - - - ¥£ Kf! L 



system tisneptNi^Ntrf 

w6 ftw nifti liiqfw^pgitdf»itiw^w^*fc^w 
Iwpi^W and m i^ nhm Scjagnm , iifciQjt—iftfl 



APPUCATfcTN KWTABHTY 



ft i r rinn IN Tinm tiiilfiniri-iirh 



' - 

UdMfht 



hnJlaan pimi ubun «■! 



WtlDANIiriTH HMO 



hwf and pKMfi in faml nB Mftonqw whk h 

nMtmi»l<N 



i'(MiwHi«linuf)iiiuifU 



(NTERNATlONAaV ACCEPTED 

i i u ffl l um a»|ht >■*■»■■■. aprf fc j jaal ftal wu wpaw ft* 



■Mtthvfv in Vvwcrfld' "UifeHA. vwAffPjffcaaandlia^iv 

Siulpluia^Miritd>»H l r.rj W r^kriu«W« 



DATAfUXSTKUCTURE 

. r* knl mini IrrxBti infill 



Ptt^f«/tvtw real fit tog)c 

AWRfrtmc OPERATORS 

Uwyxna 



SPECIAL FEATURES 
I : Pulite* trtfwrtf 



Sculptor for 68020 
OS-9 & UniFLEX 

$995 







MAXMAATOMNMA 









SCREEN H«M LANtilAti 



PR(X,HAMS 




* 



MUSTANG-020 Users - Ask For Your Special Discount! 



Tandy CoCo III Special - Reg. $595 * Special $389 * 





• •• 


••• 




* 


»» 


••• 


MUSTANG-020 


$995 $199 


$595 


PC/XT/AT MSDOS 


$595 


$119 


$595 


OS/9 UniFLEX 6809 


4< 4« 


t« 


AT&T 3B1 UNIX 


44 


44 


41 


IBM Compatibles 


4< 4< 


44 


SWTPC 68010 UniF 


$1595 


$319 


$797 


Tandy CoCo III 


Special $389.00 




SVVTPC 68010 UNIX 


$1990 


$398 


$995 



aoptmen 
** Run Time ObIj 

••♦ C K*7 File Llbmrr 



Sculptor Will Run On Over 100 Other Types of Machines ... 

... Call for Pricing ... 
!!! Please Specify Your Make of Computer and Operating System !!! 



O ■ OS-t, t . tK«DOf 

r . run. u . wu< 

CDl • CUm r i l Ot-» 
OCT - Crfor amydm FLtX 




South Tost Media 

SSOOCauan/raSmiik Kf. -tfuQen. Tit 37343 
TlUpfwn*: (61SJS42-4800 TtluQ $106006630 




m.<Ui-rrar< 






« ShlpplBl •• ,. 
DM i« USA. CMk BJ* 
r..*. 5<rfto AM >• 

Kufrif. Akw» AM M* 



•<^> t.THI iM rt^>B ^ ^^»iMI WMM«>'T^P M< U»iajOI «flTr»«»wtorfT«cluilniSpl»M I 



■b-'WTXW ll » TY»*i»r* ll.f-» faB-m Spfc» Cty, 



68 Micro Journal 



March '88 



29 



Vrfcpfume: (6 15) 842-4600 SOU tfl 'EOS t OVlcdia 



OS-9, tlni'JL'EX, 'JL'LX, S'X'WS 



Tefex; $106006630 



DISASSEMBLERS 



SUPER SLElDll from Computer Syilcnu Consultants Interactive 
nissiienrbler; extremely POWERFUL! Disk Rle Binary/ASCII 
f^amine/Chan ge. Absolute or FULL Disassembly. XREF 
Generator. Label "Name Clianger", ad Fiki of "Standard Label 
Names'' for different Operating Systems. 

CoUn Computer SS-50 Bus (all wl AL Source) 

CCO (32K Req'd) Obj. Only $49 DO 

F. S. $99.00 . CCF, Obj. Only $50 DO V, $10000 

CCF. w/Sovce $99.00 0. HO 100 

CCO. Obj. Only S50M 

OS9 68K Obj. 1100 DO wISource S200OO 
DYNAMITE* - Excellent standard "Batch Mode" Disassembler. 

Includes XREF Generator and "Sundifd Libel" Files. Special OS-9 
options w/ OS-9 Version. 

CCF, Obj. Only SI 00 DO ■ CCO. Obj. S 5995 

F.S. " " $100.00-0, object only $15000 

U."' S300M 

PROGRAMMING LANGUAGES 

PL/9 from Wtndruih Micro Systems -- By Graham Trott A combination 
Editor Compiler Debugger. Direct source JD-oftjecs compilation 
delivering fast, compact, re-entrant. ROM-able. PIC. 8 & 16-bit 
Integers & 6-djgit Real numbers for all leal-world problems. Oirect 
control over ALL System resources, including interrupts. 
Comprehen sive library support; simple Machine Code interface; 
nep-oy -step tracer for instant debugging. 50fl+ page Manual with 
tutorial guide 

F. S, CCF . $19800 

PASC from S.E. Media - A FLEX9. SK'DOS Compiler with a definite 
Pascal "flavor'. Anyone with a bit of Pascal experience should be 
able to begin using PASC to good effect in ibon order. Hie PASC 
package cones complete with three simple programs: ED (a syntax 
or structure editor). EDITOR (a simple, public domain, screen 
editor) and CHESS (a simple chess program). Hie PASC package 
cone complete with source (written in PASC) and documentation 
FLEX. SK'DOS $9500 

WHIMSICAL from S.E. MEDIA Now supports Real Numbers. 
"Structured Programming" WITHOlff losing tlie Speed and 
Control of Assembly Language! Single-pass Compiler features 
unified, user .Refined I/O. produces ROMabte Code; ftbodutes and 
Module* fmdudhg pre-compifcd Modules), many "Types" up to 32 
til Integers, 6-dig il Real Numbers, unlimited sized Arrays (vectors 
oily); Interrupt handling; long Variable Names; Variable 
Initialization; Include directive; Conditional compiling; direct Code 
insertion; control of the Stack Pointer, etc. Run- Time subroutines 
inserted as called during compilation. Normally products 10% less 
•ode than PU9. 

F.S and CCF ■ $195.00 



KANSAS CITY BASIC from S.E- Media - Basic Jar Color Computer 
OS-9 with many new commands aitd sub-functions added. A full 
implementation of the IF-TIIEN-ELSE logic is included, allowing 
nesting to 255 levels. Strings are supported and a subset of the 
usual suing functions such as LEFTS . RIGHTS, MTDS, STRINGS, 
etc are included. Variables are dynamically allocated. Also 
included are additional features such is Pack and Poke. A must for 
any Color Computer user rumijig OS-9. 
CoCo 0S.9 $39.95 

C Compiler from Wlndrusb Micro Systems by lames McCosh. Full C 
for FLEX, SK'DOS except bit-fields, including an Assembler. 
Requires the TSC Relocating Assembler if user desires to implement 
his awn Libraries. 

F.S and CCF $295 00 

C Compiler front Intro! - Full C except Doubles and Bit Fields. 

suramlined for the 6809. Reliable Compiler; FAST, efficient Code. 
More UNIX Compatible than mosL 

FLEX. SK'DOS. CCF. 0S9 (Level II ONLY), U . S575D0 

PASCAL Compiler from Luddala - ISO Based P-Code Compiler. 
Designed especially for Microcomputer Systems. Allows linkage to 
Assembler Code for maximum flexibility. 

F. S and CCF 5" - S19OD0 F. S 8" $205.00 

PASCAL Compiler from OmegaSoR (now Certified Software) - For 
the PROFESSIONAL: ISO Baud. Native Code Compiler. Primarily 
for Real-Tune and Process Control applications. Powerful; 
Flexible. 

OS-9. F.S and CCF ■ SSS0.00 
OS-9 68000 Version - S900. 00 

KBASIC - from S.E. MEDIA - A "Native Code" BASIC Compiler 
wlrich is now Fully TSC X BASIC compatible. The compiler 
compiles to Assembly Language Source Code. A NEW, 
streamlin ed. Assembler is now included allowing the assembly of 
LARGE Compiled K-BASIC Programs. Conditional assembly 
raduces Run-tiine package. 
FLEX. SK'DOS, CCF. OS-9 Compiler /Assembler S99D0 

CRUNCH COBOL from S.E. MEDIA - Suppotu large subset of ANSH 
Level 1 COBOL with many of the useful level 2 features. Full 
FLEX. SK'DOS File Structures, including Random Files and the 
ability to process Keyed Files. Segment and link laige programs at 
runumc, or implemented as a set of ovcilays. Hie System requires 
S6K and CAN be run with a tingle Disk System. A very popular 
product. 

FLEX, SK'DOS. CCF - $99 95 

FORTH from Steares Elcctrtmlo - A CoCo FORTH Programming 
Language. Tailored to the CoCo I Supplied on Tape, transferable lo 
disk. Written in FAST MI- Many CoCo functions (Graphics. 
Sound, etc.). Includes an Editor. Tiace, etc. Provides CPU Carry 
Flag accessibility, Fast Task Multiplexing. Qean Interrupt 
Handling, etc. for the "Pro". Excellent "Learning" looll 
Color Computer ONLY - $58.95 



().0*-t. S.SK'OOJ 

r.riMX, u.ua«LU 

CU.OIm T , a ■ CUM 
CGP.OlttrCceapaar WIMI 




South 'East Media 

5900 Cassandra Smith ^/. - tfuyon, Tn, 37343 



■ 



•• Shipping *• 

ASM J* UijMaua. SXJt) 
■ants* hrOn Aims* 
»i tas Alrmol AM It* 
Or OO JX Sklafat Ob>> 



ttt-t li a Traanaart af Mttrwct sad Maturate- TV E mrm UnJTLH art Tmlwuumt «f Tatbntca) Symmi CwnMitMa- ■ SK'DOS u . Tn acn. r> of s a r . t s.fl-.r . ij mm. c p. 



30 



March '88 



68 Micro Journal 



Telephone: (615) $42-4600 SOUtft 'East iMecflQ 



TeSae 5106006630 



OS* ihn'jt.rx, ih.-LX, S'A''- !t OS 



FORTHBUU.DER ii ■ stand-alone target curnpib? (crouampiki) for 
prnxubug custom Forth fysuros and cpplicakkxi programs. 
AD of die 83 -standard deTining radi and antral suucmres ire 
recognized by FORTHBUILDER 

TORlllBUn.DER isdc*igned tobdiaveasmucb w pontic like 
• reodent Forth dueTjraa/campilet, to thsi most of ibe 
established techniques for willing Forth code can be used without 
change. 

1 Jke compilers for other languages, FORTHBUILDER can operate 
in "batch mode". 

The compile r reErnpiiua and emulates target name* defined by 
CONSTANT or VARIABLE and ii readily extended with 
"compile-time" derautiari* to emulate cpeofic targes words. 
FOR J1IBUILDER ii supplied u an rranrtahle ammiod file 
configured for a specific hod system and targe* f*oce*so». Object 
code produced from the auuiirpauyin g model source code i> 
royalty-free to licensed usen. 
F, CCF. S - $99.95 

DATABASE ACCOUNTING 

XDMS from Weatduster Applied Buttsem Systems 

FOR 6809 FLEX-SK»DOS(S/8") 

Up to 32 £ cups/fields per recordl Up lo 12 chancier filed name! Up to 
1024 byte record* 1 Uter defined icntai and print con troll Process 
fileil Form IDesI CondilkziaJ execution! Prusust chaining! Upward/ 
Oownward file linkingl Fuc joining! Randan file viiiual paging) 
Built in atilniea I Built in mi line editorl Fully session oriented! 
Enhanced formil Boldface, Double width. Italics and Underline 
supported! Wiinen in impact structured uscmolerl Integrated for 
FAST uazrtion I 
XDMS-IV Data Management System 

XDMS IV it a brand new sppmadl lo data manag emenL It not only 

permits own to describe, enter and retrieve data, but also to process 
entire files producing customized reports, farm displays and file 
output. Prootisin g can consist of any of a let of ilandard high level 
(unctions including record and field selection, sorting and 
aggregation, lookups in other files, special processing of record 
subsets, custom report formatting, touting and subtouling, and 
prnmiibqp of up to three related file* as a "database" on user 
defined output reports. 
POWERFUL COMMANDS! 

XDMS-IV combust the functionality of many popular DBMS software 
systems with a new easy lo use cunnand set nam a single integrated 
package. We've included many new features and ormrnndt 
including a set of general file utilities. The prom sing commands 
are Input-Process Output (IPO) orient* which allows almost instant 



Dnplanentabro of a process design 

SESSION ORIENTED I 
XDMS-IV is sown oriented. Enter "XDMS" and you are in instant 

"■ ■'»' of all the feature*. No more waitrn g for a raunend to 

load in from disk 1 Many corn/sands are immediate, such as 
CREATE (file defimnon). UPDATE (file editor). PURGE and 
DELETE (utilities)., Others are process commands which are used lo 
create a user process which is executed with a RUN command 
Either may be entered into a "process" file which is cxcciesd by an 
EXECUTE statement. Processes may oacule other processes, or 
themtelvea, eilhrr conditionally or unoondilirajally. Menus and 
screen prompts are easily coded, and entire user apptuauosu can be 
run without ever leaving XDMS-IV 

ITS EASY TO USE! 

XDMS IV keeps data managanexa simple I Rather lhan design a ectnpkx 
DBMS which hides the true nature of the data, we kept XDMS-IV 
file oriented. The user view of data relationships is preaaaer) is 
rrpuru and ran output, while the actual data resides in easy to 
maintain files. This aspect permits oncuaniaed proentafj on and 
reports without cample* redefinition of the database files and 
structure XDMS-IV may be used for a wide lange of applications 
from simple record management systems (addresses, inventory ■■•) 
to integrated database systems (order entry, accounting ) 

The possibilities are unlimited... 
FOR 6809 FLEX-SK»DOS(S/8") $249.95 



ASSEMBLERS 

ASTRUK09 from S.E. Media - A "Structured Assembler for the 6809" 
which requires the TSC Macro Assembler 
F.S.CCF- S99.9S 
Macro Aaaeakblrr for TSC - The FLEX, SK'DOS STANDARD 
Assembler. 

Sptcial-- CCF VS M; F.S S5O0O 
OSM Extended 6809 Macro Assembler from Uoyd I/O. - Provides local 
labels, Motorola S- records , and Intel Hex records; XREF. 
GeneOrate OS-9 Memory modules under FLEX. SK'DOS 
FLEX . SK'DOS, CCF, OS-9 S99.00 
Relocating AaaembieWLInklng Loader from TSC - Use wuh many ol 
the C and Pascal Compilers. 
F.S.CCF SI SO j00 
MACE, by Graham Trotl from Windrush Micro Syslcnu - Co-Resident 
Editor and Assembler: fan interactive A.L. Prograramjjig for small 
lo moiium -siaed Program*. 
F.S.CCF-S73M 
XMACE - MACE w/C/oss Assembler for 6800V 1/273/8 
F , 5, CCF - S9SM 



o.os.*.i.a>DOf 
r . nix, u ■ twrua 

(XV ■ Ctkr Clpiai OM 
CCr.Qt.rri.) I ,TUX 




South Tost Media 

$900 Cauan/n Smitfk *£ - 9ft*(m, Tn. 37343 




L^ 



" Shipping ■• 

Kit 1* tli-A. I.mlm. tiff) 
Fwrrlaa SMftn AM S* 
Kw-rlan Alrnmll Add ISW 
Or C"_0_H. Shlpplna Only 



■Q*.<U«Tt»4M>r/ »tli iii iivaa< M ia « iai WW nJ IMTLXX mTr«a. »« rtnif TtthidrjU f O— h i»U «*K*DOf!1»iTraa— rlnOair.K *»*r— rv tjHimCmrr. 



68 Micro Journal 



March *ea 



31 



'Mevfwnc. (b i 5 1 if42<tbW $0U tft 'EdS t 9Atdia 



Tt'fe\: 5l(ki00bb.i0 



t Is", iim'J L'i X, 'J L'LX, S'K *'1K V 



UTILITIES 

Baslc09 XRef from S.E Madia - Thii Basic09 Cross Reference Utility 
is • Basic09 Program which will produce i "pretty printed" listing 
with each line numbered, fallowed by i complete cross referenced 
listing of ill variables, exit mil procedures , ind line numbers called. 
Abo includes ■ Program Lin Utility which output* ■ fail "pieuy 
pruned" lifting with line number*. Require! 8asic09 or RunB. 
A CCO obf. only - $39.95; w/ Sauri . $79 SI 

oTTWc Routines • Complete »et of routines to allow simple 

implementation of keyed file* • for yoir program! - tunning under 
UiUcOT . A re«J time saver Bid should be • pert of every seiious 
programmers tod-box. 

A CCO obf only . $89.95 

UcktaU PASCAL UTILITIES (Require* Pascal vcr 3) 

XREF - produce » Cron Reference Listing of any text; oriented to 
Pascal Source. 

INCLUDE - Include other Files in a Source Text, including Binary - 
unlimited nesting. 

PROFILER -provides an Indented, Numbered, "Strudogram" of a 
Pascal Source Text Rle; view the overall structure of large 
programs, program integrity, etc. Supptiad in Pascal Source Code; 
require* compilation. 

F. S. CCF — EACH 5" - $4000. 8" - $50J3O 

DUB from S.E. Media - A UnlFLEX BASIC denrcDp ler Re-Create a 
Source Listing from UmFLEX Compiled basic Programs. Woilti 
w/ ALL Versions of 6809 UniFI£X basic. 
V -$219.95 

LOW COST PROGRAM KITS from Southeast Media The following 
kits are available for FLEX, SK'DOS on either 5" or 8" Disk. 

1. BASIC TOOL-CHEST $29.95 
BUSTER.CMD: pretty piintci 
UNEXREF.BAS: line cross -rrJerencer 
REMPACBAS, SPCPAC.BAS. COMPACBAS: 
remove superfluou s code 

STRIP .BAS: superfluous line-numbers stripper 

2. FLEX, SK'DOS UTILITIES KIT $39.99 
CATS. CMD:*lph*bMic*]ly-sorual dirsctory listing 
CA1D.CMD: date-sorted dinictory listing 
COPYSORT.CMD-. file copy, alphabetically 
COPYDATE.CMD: rue copy, by date-order 
FILEDAIB.CMD: change file creation date 

INFO.CMD (A INFOGMX.CMD): tcUs disk anribvtes ^contents 

REL0iK.CMD (A REUNK82): re-orders fragmented free 

chain 

RESQ.CMD: undeletei (recovers) a deictad file 



SECTORS .CMD: show sector order in free chain 
XL.CMD: super text lister 

3. ASSEMBLERS/DISASSEMBLERS UTILITIES 

$39.95 
UNEFEED.CMD: Vnodul* rise 'dii ess em bier output 
MATH.CMD: decimal, hex, binary, octal «on versions 
& tables 
SKIP.CMD: column snipper 

4. WORD • PROCESSOR SUPPORT UTILITIES 

$49.95 
FULLSTOP.CMD: checks for capitalization 
BSTYCTT.BAS (.BAC): Stylo to dot-math* prinlerr 
NECPRTMT.CMD: Stylo to dot-matrix printer filter code 

5. UTILITIES FOR INDEXING $49.95 
MKNU.BAS: tebcb requited program from list below 
INDEX.BAC: word index 

PHRASES 11 AC- phrase index 

CONTENT.B AC: table of contents 

ENDXSORT.BAC: fast alphabetic sort routine 

FORMA TER BAC: produces a 2 -column formaned index 

APPEND, BAC append any number of file* 

CHAR BIN: line reads 

BASIC09 TOOLS consist of 21 subroutines forBasic09. 
6 were wriucn in C Language and the remainder in assembly. 
All the routines are ccxnpiled down to native machine code which 
makes (beat fast and compact. 

1. CFILL - fills a siring with characters 

2. DPEEK - Double peek 

3. DPOKE- Double poke 

4. FPOS - Current file position 

5. FSIZE - File siise 

6. FTRIM - removes leading space* from a string 

7. GETPR - mums the current process ID 

8. GETOPT - gets 32 byte option section 

9. GETUSR - gets the user ID 
IQ. GTIME - gets the lime 

1 1. INSERT - insert a string into another 

12 LOWER - converts a string into lowercase 

13. READY - Checks for available input 

14. SETPRIOR - changes a process priority 

15. SETUSR - changes the user ID 

16. SETOPr - set 32 byte option packet 

17. ST1ME - set* the lime 

18. SPACE -adds spaces to s suing 

19. SWAP - swaps any two variables 

20. SYSC ALL - system call 

21. UPPER - converts a string to uppercase 
For OS-9 - S44.95 - Includes Source Code 



o ■ os-t,s . «*DOS 

r • rus. u • tMsoxx 

CO.OS.rQ ill OS.* 
OCT • Otar CmaaMr *\sa 




South Tost Media 

S900 Cassandra Smith %$. - %*<m. In. 37343 




*m*V.ltT CrUd 



•• Shipping •• 

Sid 1% USA. (ml*. sr») 
F»»ia» aoroDAaiis* 
FMalss AtraaBAMio* 
or cjajy sMaptoa Outs 



■OS-S !■ iTniMirt af MkrTi ind MMaraU-*W,KX M4 VrntFLtX m Tn*rn»rti rf Tw:ti*c«I SfjliCT Gnmilt»«U-1ilt»DOS W ■ Tr»4w«ar«»f War-K SpTT— n »i*rna Cm. 



32 



March '88 



68 Mcro Journal 



Ttfepfaw: (6 1? » 84* 4600 SOU tfl 'E(IS t fyfedld 



•n-h:\: 5106006630 



Uv", itni'jL'LX, 'JlJLX, S'A'^OS 



See Review in Jimmy 1987 issue of 68 Micro Journal 

SOFTOOLS 

The following programs are included in object form for immediate 
application. PL/9 source code available for customiza Don. 

READ. ME Complete instructions for initial id-up and operation. Can 

even be printed OIK with the includad text processor. 
CONFIG one time system configuration. 

CHANCE cliangci wordi, characters, etc globally to any tat type file. 
CLEA NTXT convert* text files to standard FLEX, SK'DOS filea. 
COMMON compare two text files and reports differences. 
COMPARE another check file thai reports mis-matched lines. 
CONCAT similar to FLEX . SK*DOS append but can also list files to 



DOCUMENT for PL/9 source flies. Vety useful in examinin g parameter 

passing aspects of procedures. 
ECHO echo* to either screen or file. 
FIND an improve find command with "pattern" matching and w ildcards. 

Very useful. 
HEX dumps files in both hex and ASCQ. 
INCLUDE a file copy piogram that will accept "includes" of other disk 

files. 
KWIC allows rotating each word, on each line to the beginning. Vety 

useful in a son program, etc. 
LISTDIR a directory listing program. Not super, but better than CAT. 
MEMSORT a high-speed text file sorter. Up to 10 fields may be coned. 

Very fsst. Very useful. 
MULTICOL width of page, number of columns may be spao/ied . A 

MUST! 
PACE similar to LIST but allows for a page header, page width and 

depth. Adjust for CRT screen or printer as set up by CONFIG. A 

very smart print driver. Allows printer goO/dI ammanda. 
REMOVE a fast file deleter. Careful, no prompts issued. Zap, and its 

gone! 
SCREEN a screen listing utility. Word wraps text to fit screen. Screen 

depth may be altered at run rime. 
SORT a super version of MEMSORT. Ascending/descending order, up 

to 10 keys, case over-iide, son on nth word and son on characters if 

file is small enough, sons in RAM If large file, son ii constrained 

to six of you r largest disk capacity. 
TPROC a small but nice text formatter. This is a complete formatter and 

has functions not found in other formatters. 
TRANSLIT sons a file by x keyfields. Checks for duplications. Up to 

10 key files may be usad. 
UNROTATE used with KWIC this program reads an input file and 

unfolds it a line at a time. If the file has been sorted each woid will 

be presented in suntexec 
WC a word court utility. Can count words, characters or lines. 

NOTE: this set of utilities consists of 6 5.1/4" disks or 2 8" disks, ml 
warn (PL9). 3 5-1/4" disks or I 8" disk w/o source. 
Complete set SPECIAL INTRO PRICE: 

5-1/4" w/source FLEX - SK'DOS - S129.95 



w/o source - 579.95 

8" w/souroe - $79.95 - w/o source S49.95 

FULL SCREEN FORMS DISPLAY from Computer Systems 

Consultants — TSC Extended BASIC program cvpporo any Seiial 
Terminal with Cursor Control or Memos y-Mapped Video Displays; 
substantially extends the capabilities of the Program Designer by 
providing a table driven method of describing and using Full Screen 
Oiiplsyx. 

F , S and CCF, V . S2SM. wi Source . tSODO 

SOLVE from S.E Media - OS 9 Levels I and D only. A Symbolic 
Object/Logic Verification & Examine debugger. Including inline 
debugging, disassemble and assemble. SOLVE IS THE MOST 
COMPLETE DEBUGGER we have seen for the 6809 OS-9 •ericsl 
SOLVE does it all! With a rtich selection of monitor, assembler, 
disassembler, environments] , execution and other mUnellancuas 
aanmandj , SOLVE is the MOST POWERFUL tool -kit item you 
can own! Yet, SOLVE is simple to use! Whh complete 
documentation, a mapl Eveiyone who has ordered this package has 
raved! See review -68 Micro Journal - December 1985. No 'blind' 
debugging here . full screen displays, rich and complete in 
infomubon presented. Since review in 68 Micro Journal, this is our 
fastest moverl 

Uvels I <* // only OS 9 S69.9S 



DISK UTILITIES 

OS-9 VDisk from S.E. Media - For Level I only. Use the Extended 
Memory capability of your SWTPC or Giraix CPU card (or similar 
format DAT) for FAS!" Program Compiles, CMD execution, high 
speed inter-proccss communicalJom (without pipe buffers}, etc. - 
SAVE thai System Memory. Virtual Disk size is variable in 4K 
incrcOmenu up to 960K. Some Assembly Required. 
Uvtl / 05* ob). S79.95: wt Some S149.9S 

O-F from S.E. Medi a - W rinen in B ASIO09 (with Source ), includes : 
REFORMAT, a BASIC09 Program that reformats a chosen amount 
oT an OS-9 disk to FLEX. SK'DOS Format so it can be used 
normally by FLEX, SK'DOS; and FLEX, a BASIC09 Program thai 
does the actual lead or write function to the special O-F Transfer 
Disk: user-friendly menu driven. Read the FLEX . SK'DOS 
Ousctory . Delete FLEX. SK'DOS Files, Copy both directions, etc. 
FLEX , SK'DOS users use the special disk just like any other FLEX, 
SK'DOS disk 

O . 6809168000 J 79 95 

1SORT from S.E Media - A SORT/MERGE package for OS-9 (Level t 
& II only). Sorts records with fixed lengths or vaiiable lengths. 
Allows for either accending or descending son. Sorting can be done 
in either ASCII sequence or alternate collaring sequence. Right, left 
or no justification of data fields available. I -SORT includes a full 



AMktWij Uaaads 
o.o»s,s.s«.'ixjs 
F.fUl.U.UeiFlEX 
CCS • Gok» q—auur os-s 
txy . Cetor Cob **» VLt * 




South 'East 'Media 

5900 Cassandra Smith %£ ■ ffvrscm, Tn. 3 7343 




" Shipping « 

Ada 2* US-A. (mln UWI 
ranlsa lute A44 5* 

rontaa Air™u Ada t*s> 
Or CO.D. SUpftlaa oolj 



«o«.i ba 



Traawnart of M krawar* t ni Mattreta- ■»!. E X and llnin -E X *™ Tri df mirfc ■ at 1>t Knfrmt 5 jrt ma f'jMim>H»n ts-'fiK'DOS >■ a Tra Atirm r h of .s ^ r . K >w,fl w»r > Syntim Corp. 



68 Mrcro Journal 



March '88 



33 



Telephone: (b 15 ' #42-4600 SOU til 'EOS t tMedid 



Tefei(:5Ute00t>bM) 



OS 9, Uni'JVLX, fL'EX, S'K'WS 



set of oanunmu aid enm messages . 
05-9 MSJU 

HIER from S.E. Media - W/£« is a modem hiemrchal storage system for 
titers under FLEX. SK'DOS It answen ibe needs of those who 
have hud disk c^abtliiici on their lynenu, or many files on one 
diik - any size. Using HIER • regular (any) Fl.EX, SK'DOS 
disk (( • S - hard disk) can have sub directories. By this method 
the p r oM o m of assigning unique names lo file* u leu burdensome. 
Different files with ihe cua ume name may be on the tame disk, 
aa long at they an in differed! direaoract . For the Winchester user 
thii become* a mud. SuJv-dvtnunrj are the modem day solution 
thai all current large systems use. Kaefc dirMbary looks la FLEX, 
SK'DOS like a regular file, evept tat* have the extras! uo 
'.DIR A fall set of directory handling prognuns are included, 
making the operation of HIER mops' e and straightforward. A 
special install package is cnchalad to install KIER to your particular 
version of FLEX, SK*fX>S. Same assembly naauind. Install 
indicates each byte or reference change needed. Typically • 6 byte 
changes in source (furnished) and one assembly of HIER is all that 
is required. No programming requiiedl 
FLEX . SK'DOS S79.95 

COPYMULTfrom S.E. Media -Copy LARGE Disks to several 

smaller disks. FLEX. SK'DOS unities allow the backup of ANY 
size disk to any SMAIJJBR aije diskettes (Hard Disk to floppies, 8* 
to 5", etc.) by simply inserting diskettes as requested by 
COPYMULT. No fooling with directory deletions, etc. 
COPYMULT.CMD understand s normal "copy" syntax and keeps up 
with files copied by mxinuunin g directories for both host and 
receiving disk system. Al»o includes BACKUP.CMD to download 
any sine "random" type file: RES PORE CMD to restruosre copied 
"random" files for copytn g, or recopyin g back lo Ihe boat system; 
and fflEEUNK. CMD as a "bonus" nnlily that "relinks" the free 
diain of floppy or hard disk, eliminating (ragmen laaon. 

Completely documented Assembly Language Soiree files included. 
ALL 4 Programs (FLEX. SK'DOS, fori") t99.SO 

COPYCAT from Luddata - Pascal NOT required. Allows reading 

TSC Mini FLEX. SK*DOS. SSB OOS68. and Oigiud Research CP/ 
M Disks while cperaong under SK'DOS . FLEX 1.0. FLEX 20.or 
FLEX 9.0 with 6800 or 6809 Systems. COPYCAT will not 
perform miracles, but. betwe e n the program and the manual, you 
stand a good chance of accomplishing a transfer. Also include* 
some Utilities to help out. Programs supplied in Modular Source 
Code (Assembly Language) to help solve unusual problems. 
F.SaadCCFf.tSOM F.S 9"S65J0O 

VIRTUAL TERMINAL from S.E Media - Allows one terminal to do 
the wok of several. The user may start as many as dg I task on one 
terminal, under VIRTUAL. TERMINAL, and switch back and forth 
between task at will. No need to exit each one; just jump back and 
fotlh Complete with configuration program. The best way lo keqi 



up with those background programs. 

& CCO -obj. only- $49.95 
FLEX, SK'DOS DISK UTILITIES from Computer Systems 

Consultants - Eight (g) different Assembly Language (w/ Source 
Code) FLEX, SK'DOS Utilities for evety FLEX. SK'DOS Users 
Toolbox: Copy a File with CRC Errors; Test Disk for errors; 
Compare two Disks; a fast Disk Backup Program; Edit Disk 
%doa; Linearis Fiee -Chain on the Disk: print Diik IdsCiTicanVn ; 
and Soil and Replace the Disk Directory (in sorted order). - PLUS 
- Ten XBASIC Programs including: A BASIC Resesjucnocr with 
EXTRAS over "RENUM" tike check for missing libel definitions , 
processes Disk to Disk instead of in Memory, etc Other piogramt 
Cbtisparc. Merge, or Generate Updates between two BASIC 
Programs, check BASIC Seqomz Numbers, compare two 
uqioyjcnoEd files, and 5 Programs for cstahlithin g a Master 
DimsDiy of seven) Disks, and sorting, selecting , updating, and 
printin g paginated listing « of these files. A BASIC Cross -Reference 
Program, written in Assembly Language, whidi provides an X-Ref 
Lilting of ihe Variables and Reserved Words in ISC BASIC, 
XBASIC, and PRECOMPIIER BASIC Programs. 
ALL Utilities include Source* (either BASIC or At, Source Code). 

F.SandCCF SiO.OO 

BASIC VtHUies ONLY Jo, UniFLEX - SXM 

COMMUNICATIONS 

CMODEM Telecom municalions Piogram from Cnmputer Systems 
Consultants, Inc. - Menu-Driven; supports f>unb- Terminal Mode, 
Upload and OownkmJ in oon-proloanl made, and the CP/M 
"ModranT Christen so) prowopl mode to enable conmuni cation 
capabilities for almost any requirement- Written in "C. 

FLEX. SK'DOS. CCF. 0S-9. UniFLEX. 68000 A MNs 
Source SIOO.00 - without Source 150 M 

X TALK from S.E Media ■ X-TA1X consists of two disks and a special 
cable, the hookup enables a 6809 SWTPC awoyuux to dump 
UniFLEX file* directly to the UniFLEX MUSTANG-020. This is 
Ihe ONLY currently available method to tnuuf er SWTPC 6809 
UniFLEX files to a 68000 UniFLEX system. Gimix 6809 users 
may dump a 6809 UniFLEX file to a 6809 UniFLEX five inch disk 
and it is readable by the MUSTANG-020. The cable is specially 
prepared with internal ensmsctiona to match the non-standatd 
SWTPC SO/9 I/O Db25 oomsasors. A special SWTPC S+ able set 
is also available. Users should specify which SWTPC system he/ 
ihc wishes lo communicate wilh the MUSTANG-020. Ttic X- 
TALK software is furnished on two disks. One eig t inch disk 
contains S.E. Media modem piogram CMODEM (6809) and the 
other diik is a MUSTANG-020 five inch disk wilh CMODEM 
(68020). Texi and btnsiy files may be directly transferred between 
Ibe two system*. Ihe C-MODEM programs are unaltered and 
pcifurm as excellent modem program* also. X-TAIX can be 
punJuHol wilh or without the special c»hlc*. but this special price is 
available lo registered MUSTANG-020 users only. 
XTALK Complex, fcaMt, 2 diito) $99.95 



0.0».S,fSX.DO* 

r.nu.u.uainxx 

COl . OtttS fi lia te OH 
(XT . this. f»H » na 



■onus 




South 'Last 'Media 

i900 Cassandra Smith %C - 9&*j<m. Tn. 37343 




" Shipping •• 
MM ]« lutA.7tsat.lija) 
m«s tanas* AM »% 
*w«aj> av«* *«* i*» 
Or OO A »<>*•• (Mr 



•rMonri ia* H.linh TT.H mmt UaaTLU an Tiilmiit — - ■ ■ 



■ • M.' irn* in 



^*Ssr-K ** rt M i n Sjat— rjr». 



34 



March 88 



68 Micro Journal 



'Tvfcplnmc: (615) 842-4600 SOU tfl 'East Olfedia 



Tefe^: 5106006630 



05-9, ilm'JCEX, IIL'EX, S'K'VOS 



XTALK Softwart (2 diikt only) 169.95 

XTALK with CMODEM Source 1149.95 
XDATA from S.E. Media - A COMMUNICATION Package for Ihe 
UraFLEX 0|«ialing System. Uk with CP/M, Main Frames, other 
UniFLEX Systems. Etc Verifies Transmission using checksum or 
CRC; Re-Tramnuis bad blocks, etc. 

V ■ 1299.99 

EDITORS & WORD PROCESSING 



JUST from S.E Media - Text Forrruuic r developed by Ron Anderson; 
for Dot Matrix Printers, provide* many unique features. Output 
"Formaiied" Text to Ihe Display. Use the FFRINT.CMD supplied 
for producing multiple copies of the "Formatted" Text on die Printer 
INCLUDING IMBEDDED PRINTER COMMANDS (veiy useful 
at other times also, and wonri Ihe price of the program by itself). 
"User Configurable" for adapting to other Printers (comes set up for 
Epson MX -80 with Grafuax): up to ten (10) imbedded "Printer 
Control Commands". Compensate* for a "Double Width" primed 
line. Includes the normal line width, margin, indent, paragraph, 
space , vertical skip lines, page length .page numbering, aouering , 
fill, justification, etc. Use with PATor any other editor. 

• Now suppliad as a two disk set; 

Disk Kl ; JUST2CMD object file, 

JUST2TXT PL9 sourct.FLEX, SK'DOS ■ CC 

Disk #2; JUSVSC object and source in C: 

FLEX, SK'DOS - OS9 . CC 

The JTSC and regular JUST C source are two separate programs. 1T5C 
compiles to a version that expects TSC Ward Processor type 
commands, (.pp tp ce etc.) Great for your older text files. The C 
aource compiles to a standard syntax JUST.CMD object Isle. Using 
JUST syntax (,p .u .y etc) With all JUST functions plus several 
additional pi inter formatting functions. Reference Ihe JUSTSC C 
source. For those wanting an excellent BUDGET PRICED woid 
processor, with features none of the others have. This is ill 

Ditk (1) ■ PL9 FLEX only. F.S& CCF ■ 149.95 
Disk Stt (2)-F,Si CCF i OS9 (C version) - 169.95 
OS-9 68K000 complete with Source - 179.95 

PAT from S.E. Media - A full feature scran oriented TEXT EDITOR 
with all Ihe best of "PIE m ". For those who swore by and lovad only 
PIE, this is for you! All PIE features and much morel Toomany 
features to list. And if you don I like these, change or add your own. 
PL-9 source furnished. "C" source available soon. Easily 
configured to your CRT, with special conf ig section. 
Regular FLEX, SK'DOS 1)29,50 
• SPECIAL ItfTRODUCTION OFFER ' 179.95 
SPECIAL PAVJUST COMBO (wlsourct) 

FLEX, SK'DOS 199.95 
OS9 6BK Version 1229 DO 



SPECIAL PATUUST COMBO 68 K 124900 
Note: JUST in "C" source available for OS-9 

CEDR1C from S.E. Media - A screen oriented TEXT EDITOR with 
availability of "MENU' aid. Macro definitions, configurable 
'permanent definable MACROS' - all standard features and the 
fastest 'global' functions in the west A simple, automatic icnninal 
coofig program makes this a real 'no hasscl' product. Only 6K in 
size, leaving the average system over 16S seniors for text buffer - 
appx. 14,000 plus of free memory 1 Extra fine for programming at 
well as text. 

FLEX, SK'DOS 169.95 

BAS EDIT from S.E Media • A TSC BASIC or XB ASIC aacai editor. 
Appended to BASIC or XBAS1C. BAS-EDtT is transparent to 
normal BASIC/XBASIC operation. Allows editing while in 
BASIC/XBASIC. Supports the following functions: OVERLAY. 
INSERT and DUP LINK. Make editing BASIC/XBASIC programs 
StMPLEI A GREAT time and effort saver. Program men love ill 
NO more retyping entires lines, etc. Complete with over 25 
different CRT terminal configuration overlays. 
FLEX, CCF, SK'DOS 139.95 

SCREDITOR III from Windiush Micro Systems - Powerful Screen- 
Oriented Editor/Word Processor. Almost SO different commands; 
over 300 pages of Docum eolation wilh Tuton al. Features Multi- 
Column display and editing, "decimal align" columns (AND add 
them up automatically), multiple keysuoke macroa, even/odd page 
headers and footers, imbedded printer control codes, all 
justifications, "help" support, aiore common command series on 
disk, etc. Use supplied "set-ups", or remap Ihe keybem/d to your 
need*. Except for proportional printing, this package will DO IT 
ALL1 

6S00 or 6809 FLEX, SK'DOS or SSB DOS, OS-9 -1175 DO 

SPELLB "Computer Dicnotuuy" from S.E. Media - OVER 150,000 
words! Look up a word from within your Editor or Word Processor 
(with the SPH.CMD Utility which operates in Ihe FLEX, SK'DOS 
UCS). Or check and update the Text after entry; ADD WORDS to 
the Dictionary, "Flag" questionable wotds in the Text, "View a word 
in context" before changing or ignoring, etc. SPF.U £ fiitt checks a 
"Common Wold Dictionary", then ihe normal Diction*) y, then a 
"Persona] Ward Lin", and finally, any "Special Word List" you may 
have specified. SPELLB also allows the use of Small Ditk Storage 
systems. 

F. S and CCF - 1129.95 

STYLO -GRAPH from Great Plains Computer Co. - A full-screen 

oriented WORD PROCfiSSOR - (uses the 51 x 24 Display Screens 
on CoGo FL£X/SK»DOS. or PBJ Wotdpak). Full screen display 
and editing; support* the Daisy Wheel proportional primers. 



0> 034$. A •DOS 
cca.ctoto " ■'» « ■ os.a 

tXf . 0*» Coafiaar fOM 




South "Last Media 

5900 Cassandra Smith "XJ. - Hfvyon, Tn. 37343 




" Shipping *• 

Add I » I _•,_*. (ml* tut) 
>«'i IMP Su, (« , AM I* 

Fwtlpi A IrraiU A4i 1 *% 
Or CO J). Ship*** D«li 



tMVty ■ Trill— S *f MlcTTTt ajjd Wol»»Ufl,t» m* Ua^HX aw THdiMrtu af TVchA.1 SJH.1M C«ilm»B.*SK«rjog u ■ Tntairl of Bur.E Mtemm *T«— Ora 



68 rVicro Journal 



March '86 



35 



Vdepfume: $15) $42-4600 S Oil til 'EOSt fyfeditl 



'Me*; 5106006630 



OS-9, Wii'JL'LX. 'JfJLX, S'X''J>OS 



NEW PRICES 6809 CCF and CCO . $99.95. 

F.Sor O- 1119.95, U . S299.95 
STYLO-SPELL from Gnu Plaint Computer Co. - Fan Computer 
Oiaiaury. Ccnip'onni Stylogiaph. 

NEW PRICES 6809 CCF and CCO ■ 169 95. 

F.SorO $99.95.V -$14995 
STYLOMERGE from Great Plains Compucr Co. - Merge Muling 
list to "Form* Letters. Piint multiple Rle». etc.. th«*»gh Stylo- 

NEW PRICES 6809 CCF and CCO - 159.95. 

F.Sor ■ 179.95. V -1129.95 
STYLO. PAK ~ Gniph + SpeU ♦ Merge Paekige Deallll 

F.SorO- $329.95. V . S549.95 

0. 68000 $69500 



MISCELLANEOUS 

TABULA RASA SPREADSHEET from Computer Systems 

Connilunu - TABULA RASA is similar to DESKTOP/PI AN; 
provide* we of tabular computation sjwnes used for analysis of 
business, sales, rod economic conditions. Menu-drven: extensive 
report generation capabililiea. Requires TSCs Extended BASIC. 
F.Sand CCF. U $5000. wi Soiree $ 100 DO 

DYNACALC - Qertroruc Spread Shea for the 6809 sad 68000. 
F.S.0S-9 and SPECIAL CCF- $200 DO. V ■ 519500 
0S-9 68K- $595DO 

FULL SCREEN INVENTORY/MRP from Computer Systems 
Consulunu - Use the Full Screen Inventory System/Materials 
Rrquiremo l Pluming for maintaining inventories. Keeps item field 
file in alphabetical order for easier nquiiy. Locale and/or print 
records matching partial or complete item, description, vendor, or 
•nhrutci: find hack order or below stock levels. Piiut-ouu in hem 
or vendor order. MRP capability for the maintenance and analysis 
of Hsenvrchical assemblies of items in the inventory file. Rnrouea 
TSCs Extended BASIC. 

F. S ami CCF. V ■ 150D0. m> Sourer - UO0O0 

FULL SCREEN MAILING LIST from Computer System- Consultants 
- The Full Screen Mailing List System provides a meant of 
maintaining simple mailing litis. Locate all records matching on 
partial or complete name, dry, stale, sip, or attributes for Listings or 
Labels, etc Requires TSCs Extended BASIC. 

F.Sand CCF. U - 1S0D0. wr Sown ■ S100D0 

DIET-TRAC FarocsWiT from S.E. Media - An XBASIC program that 
plans a diet in terms of either calories and percentage of 
camoftydmes , proteins and fats (C P G%) or grams of 
Camohydiele. Protein and Fat food exchanges of each of the six 
bask food groups (vegetable, bread. meat, skim milk. fiuil and fai) 
for a ipaofie individual. Sex, Age, Height, Present Weight. Frame 
Siae, Activity Level and Basal Metabolic Rate for normal individual 
are taken into account. Ideal weight and sustaining calories for any 
weight of the above battirsdual are ralnilstad Provide* number of 
days and daily calendar after weight goal and calorie plan is 



determined. 

F,S $59.95. U- $89.95 

CROSS ASSEMBLERS 



TRUE CROSS ASSEMBLERS from Computer Synemi Cunxulumu - 
Support, 1 802/5. Z- 80, 6800/1 /2/3/8/tl/HCll. 6804.6805/11003/ 
I4680S. obW/OVOI, 6502 family. 8080/5. 8020/1/2/35/035/39/40/ 
48/C48/49/C49/50/«748/49. 8031/51/8751. and 68000 Systems. 
Assembler and Listing formats tame as target CPU's format 
Produces machine independent Motorola S-TeXL 
68000 or 6809. FLEX. SK'DOS. CCF, OS 9. UniFLEX 
any object or source each - $50 DO 
any 3 object or soumt tech ■ $100 DO 
Set of ALL object $20000 ■ Xswa $500 00 

XASM Cross. Assemblers for FLEX. SK'DOS from S.E MEDIA - 
This set or 6800/1 Z2/3/5/8. 6301 , 6502, 8080/5 . and Z80 Cross 
Assemblers uses ihc familiar TSC Macro Assembler Commind Line 
said Source Code format. Assembler options, etc., in providing code 
for the target CPU's. 

Complete ret. FLEX. SK*DOS only . $15000 

CRASMB from LLOYD I/O - Supports Motorola's. Intel's. Zilog's, and 
other's CPU syntax for these 8-Bit m ktupnax a sow: 6800. 6801, 
6303. 6804, 6805. 6809. 681 1 (all varieties): 6502. 1802/5. 8048 
family. 8051 family. 8080/85, Z8.Z80, and TM6-7000 family. 
Has MACROS. Local Labels. Label X-REF. Label Length to 30 
Chan. Object code formats: Motorola S-Recoids (text), Intel HEX- 
Records (text), OS9 (buiaiy), and FLEX, SK'DOS (biiuiy). 
Written in Assembler ... e.g. Very Fast. 

CPU TYPE ■ Price each: 



For MOTOROLA 
FLEX9 $150 

SK'DOS $150 
OS9mS09 $150 

059/68K 

CRASMB 16.32 from LLOYD 3/0 



INTEL 
$150 
$150 
$150 



OTHER COMPLETE SET 
$150 $399 

$150 $399 

$150 $399 

$432 

-Supports Motorola's 68000. and 
has same features as the 8 bit version. OS9/68K Object code 
Format allows this cross assembler to be used in developing your 
programs for OS9/68K on your OS9ft809 computer. 
FLEX. SK'DOS. CCF. 0S-9I6809 $249 00 

GAMES 

RAPIER - 6809 Chess Program from S.E Media -- Requires FLEX . 
SK • DOS aid Display son Any Type Terminal Features: Four 
levels of play. Swap tide. Point scoring system. Two display 
boards. Change skill level. Solve Crackmate problems in 1-2-3-4 
moves. Make mm e and swap sides. Play white or black. TnlsU 
one of Use tBwtgest CHESS programs panning oa any 
ssJcfDctaaipwfcr. estimated USCF Rating 1600* (better than moil 
'dub' players at higher levels) 
F.Sand CCF $79.95 



0-0«vs,s-at*DO* 

CCS.CMar I 

ccy.osswc-ian rm 




South 'Last Media 

S900 Cassandra Smith */. - Stogim, Tn. 3 734 i 




•OS! Is • Tnlirt «f M ki ati sad llmnh TUX m* 



V*n.lX v> Tr*tmvi**Ti**alSTt*M*C*m*MI*-*t%'K»*t 



** Shipping •• 
AaS 1* LLiA. (BSa. UD) 
r*nlaa SvfkM Mi 9* 
F*ntai Air™ II AU If* 
Or CO .©. SMppl^ Oatj 



■rt^ttrtMhw %t*nmCmr. 



36 



March '68 



68 Micro Journal 



Mac-Watch 

For Those 

Needing to 



68 MJ 



Lomj 



The Macintosh* Section 
Reserved as a 




A place for your thoughts 

And ours 

Mac- Watch 



Spellswell™ Revisited 
A Spelling Checker & Proofreader 



Last year we ran a review of 
this same program. Since then it 
has been enhanced to reflect the 
needs of more recent Macintosh 
word processing applications. As 
many of our readers who rely on 
our reviews are more "serious" 
users, we thought it appropiiate 
to bring things up to date. This 
brings us up to version 2.0e, 
which is current as of the end of 
1987. 

The following is a partial list- 
ing of current applications that 
this version functions with, pre- 
serving graphics, font and style 
information. 

MacWrite 4.5, 4.6 
Word* 3.01 

Works 
More 

ThinkTank 
Jazz 
Acta 

Text documents 
* Will not work with Word 
"Fast Save" files. 



Included is a "homonym" 
checker, allowing for compari- 
son of words that have similar 
sounds. Example "to - two - too." 
Examples of each word is dis- 
played and how each word is 
used. Users can add words to the 
"homonym dictionary" for spe- 
cial treatments. 

Another nice feature is cor- 
rection of abbreviations that are 
not entered correctly. Example 
"Phd -PHD - Ph.D." For the tech- 
nical writer this feature has sig- 
nificant value. 

It has a 93,000 plus word 
maindictionary . And the usercan 
create and maintain a separate 
dictionary of special words that 
are not appropriate for the main 
dictionary. 

Other features include: auto- 
matic word replace or skip func- 
tions, recognize proper nouns 
that are not capitalized, uncapi- 
talized words at the start of any 
sentence and incorrect hyphen- 
ated words. It also detects miss- 
ing apostrophes and missing 
spaces between sentences and 
words. For the chronic hy- 
phenater, it recognizes words 
such as "pre-sorted" to be two 



words, such as "pre sorted" and 
treats each as a separate woid. 

The user has the option of 
making a new document of the 
one being checked and changed. 
This document will be the mirror 
image of the original unaltered 
document and has appended the 
extension ".sbk." Words that 
contain diacritics may be added 
to the dictionaries. 

All the quick features are 
supported and are optionally se- 
lected and may be saved as per- 
manent options. These may be 
changed during a session as a 
temporaiy function, or saved 
permanently. The quick func- 
tions are, Skip, Replace, Add and 
Delete. Questioned words are 
shown in context. Also A 
"Guess" option allows the 
checker to suggest a proper spell- 
ing. Wildcard guesses are al- 
lowed by the insertion of a "?" 
question mark. For instance, the 
word "simultaneously" may be 
wildcarded as "sim?ly." All 
words starting with "sim" and 
ending with "ly" will be dis- 
played. Needless to say, this 
function can become quite time 
consuming, but can sure make 
life easier for the user who does a 



66 Micro Journal 



March '88 



37 



lot of word processing. Help is 
online and selected from the dia- 
log box. The View option allows 
the user to view, in alphabetical 
order, listings direct from the 
selected dictionary. This is sorta 
like using a standard printed dic- 
tionary, without the finger walk- 
ing. 

Other useful features include 
checking for double words, one 
or two spaces after a period and 
words that are made up of mixed 
letters and numbers. Words con- 
nected by double dashes are 
treated as separate words. 
Spellswell allows for the inser- 
tion of abbreviations, special 
capitalization and contractions 
into the dictionaries. Most of the 
options can be turned off, as the 
user desires. 

Spellswell is a "batch" as 
opposed to an "interactive" spell- 
ing checker. That is, you run it as 
an application and choose each 
document as a separate run. Inter- 
active spelling checkers can run 
as you type in yourdocument and 
normally have two modes, "inter- 
active" or "selection batch spell- 
ing checking." I actually use 
both. I use the "interactive" 
checker as I compose documents. 
However, many of our articles, 
advertising and other textual 
material comes in over modem, 
or is on a non-Macintosh disk and 
has to be ported to the Macintosh 
format for editing and process- 
ing. In that case we always use 
Spellswell, after it is ported to the 
Macintosh, as it is undoubtedly 
the best for that type of applica- 
tion. 

There is no limit to the size of 
documents this checker can 



handle. On exiting theSpellswell 
session a report of the number of 
words checked and total word 
count is displayed. Also the user 
is given the option of saving any 
special options (skips, etc.) se- 
lected for that particular session 
for any future spelling checks of 
the same document. 

Additional special dictionar- 
ies are available from the vendors 
of Spellswell. They are a legal 
and medical dictionary. It should 
be noted that these are additional 
cost items and are not included, as 
is the case with some other spell- 
ing checkers. As we did not re- 
ceive them they are not included 
in this review. 

Lookup™ 

and 
Findswell™ 

These two utilities are DAs 
(Desk Accessories) from the 
folks that produce Spellswell. 
Once you start using either or 
both, you are hooked. Even if you 
use similar programs from other 
vendors, these two are tops in 
what they do. 

Lookup 

This is a utility, for 5 12K and' 
up Macintoshes, that uses the 
dictionaries from Spellswell and 
allows the lookup of any word, 
from within any application. It is 
certainly much slicker than hav- 
ing to stop and look up words out 
of heavy and bulky printed dic- 
tionaries. Not to mention much 
faster (I don't care how fast your 
fingers can walk through the 
pages!) Lookup comes with the 
standard 93,000 plus word dic- 



tionary. Same one as is used by 
Spellswell. Using Lookup allows 
checking any word with just a 
simple keystroke. 

Lookup makes spelling sug- 
gestions and then will replace the 
word in question with the correct 
spelling. Also supported is the 
wildcard feature of Spellswell. 
Words may be entered or deleted 
from the dictionaries and Lookup 
maintains the format and font of 
the word being changed. Also 
featured is an excellent Help 
function, again practically the 
same as for Spellswell but di- 
rected towards the specifics of 
Lookup. 

The dialog box has several 
options, including Sound - 
checked the system beeps twice 
for functions successfully com- 
pleted, unchecked the sound is 
shut off. Also supported are the 
options covered in the Spellswell 
review above, including View, 
Guess, Add, Delete and Replace, 
as well as Cancel, Capitalization, 
Abbreviations, contractions and 
diacritical marks are all handled 
as in the Spellswell review above. 

Lookup is the sort of program 
that becomes more indispensable 
as it is used. At first I was calling 
up an "inside" spelling checker 
on practically every editing ses- 
sion. That was taking up a lot of 
valuable memory as well as slow- 
ing things down. Now I depend a 
lot on Lookup alone, as it is a DA 
and always there under the Apple 
menu. I don't even have a regular 
printed dictionary on my desk 
anymore. That should tell you 
something about the latest spell- 
ing aids now available for the 
Macintosh. 



38 



March 88 



68 Micro Journal 



Findswell 

This is one that I thought that 
1 really didn't need, when it first 
arrived. Boy, was I wrong! 

You see, the Macintosh now 
comes with a real neat DA called 
"Find File." Everyone who pur- 
chases a newer Macintosh re- 
ceives the Find File DA as part of 
the utilities supplied from Apple. 
And I must admit that it was one 
of the most used DAs we had on 
our various systems (we have 
everything from 128K Macs to 
Mac lis in our office), because of 
the hundreds and even thousands 
of files we maintain on our hard 
disks. Before we had Find File we 
would literally spend a good 
chunk of an hour sometimes 
looking for some file on our hard 
disks. The Find File allowed us to 
type in the name or part of the 
name of a file and it would be 
found in seconds, as opposed to 
minutes (many) before. We were 
happy with Find File, that is until 
we started using Findswell. 

Findswell is an "Init" type 
file. An In it file is one that resides 
in the System Folder and as the 
system is booted up, each time, 
all lnit files are located and exe- 
cuted before the system is turned 
over to the user. Sort of an auto- 
matic program installer. 



Findswell has features that go 
beyond Find File. The one that we 
find most useful is it's ability to 
have the pointer relocated to the 
resident folder of any file we 
seaich for. With Find File it was 
necessary, after the path to the file 
was determined, to point your 
way through the various levels of 
folders until you arrived at the 
properone.orletFind File move 
the located document to the desk- 
top until you completed your 
work on that particular docu- 
ment. First, we don't like to work 
from the desktop. Secondly, if 
you have a hard disk, or even a 
floppy, that has many levels of 
folders, it can get to be a real bear 
finding your way around. You 
can do a lot of mouse punching. 

As I said above, Findswell, 
once it has located a document 
(Findswell actually finds any- 
thing on a disk - document or 
application, etc.), positions the 
selection pointer in the proper 
folder for immediate opening. 
We have some files that are as far 
as 9 to 10 folders or more deep. 
As you can see, a lot of time can 
be saved by automatic pointer 
location. 



Findswell, once placed in the 
system folder, inserts an addi- 
tional box in the "Open" dialog 
box. When Findswell is selected 
another dialog box is opened 
where you type all or part of the 
name of the document desired. 
Options are - All, Full Name, 
First Part, Stop, Open and Done. 
When the located document is 
displayed at the top of the dialog 
box the entire path as well as the 
full name is shown, date and time 
of its last modification, its size 
and the program that created it. 
The document can then be 
opened from the open button or 
the box closed and the applica- 
tion Open function activated and 
the pointer is immediately in the 
proper folder. 

Documents that you fre- 
quently use and folder names can 
be remembered by Findswell. 
Each time you use Findswell 
these remembered names will 
appear and can be opened with 
the normal double click. 

For those of you who do not 
have Find File (older Macintosh) 
I would certainly recommend 
considering Findswell. And, if 
you use a hard disk as heavily as 
we do, then I would recommend 
Findswell, even if you already 
have Find File. 

A staff review. 



EOF 



FOR THOSE WHO 



NEED TO KNOW 



68 MICRO 



JOURNAL 



TMl 



J 



66 Micro Journal 



March '88 



39 




jjggrg Comer 

U^e JKrcr Wfytn Gltmtributara Mtti 



Jfe* 



ATARI ST 68000 COMPUTERS 



Dale E. Randall 
1270 Dew Drop Lane 
Florissant. MO. 63031 



INTRODUCTION 



THE HELIX 



Like many other computer 
hobbyists, my first home com- 
puter experience was with a 
SWTPC 6800 kit. I purchased it 
In 1976. This machine started 
out as three memory board. 12K 
machine. I used a Micro-Term 
ACT I. TV terminal which dis- 
played 16 lines by 64 upper- 
case characters. I made my own 
300 Baud "Kansas City" tape 
cassette Interface. The 8K Basic 
took at least ten minutes to 
load. I developed my own 6800 
Editor/ Assembler and a power- 
ful but slow 12K Basic Inter- 
preter. This was all done, using 
a Radio Shack stereo tape deck. 
I even had a Teletype KSR 35 
with punched tape reader and 
tape punch. I also developed my 
own 256x256 bit graphics 8K 
memory board. I redesigned the 
tape cassette Interface to work 
at 2400 baud. The terminal and 
TV set was replaced with a Digi- 
tal Research ZRT 80 CRTTermi- 
nal board and Zenith green 
screen. The Teletype was re- 
placed by a unl-dlrectlonal 
Centronics 737 dot matrix 
printer, This eventually evolved 
Into a full 48K system, which 
needed a 10 amp power supply 
to avoid a "brown out", when 
our home central air condi- 
tioner turned on. The SWTPC 
6800 machine was finally re- 
tired and replaced with a HELIX 
6809. with FLEX. In the fall or 
1983. 



The HELDC was a vast im- 
provement. It had 256K of bank 
switched DRAM memory, a 35 
amp regulated power supply, a 
360K floppy disk drive with 
DMA. a 6809 2.5 MHZ proces- 
sor, plus compatibility with the 
old SWTPC machine. The extra 
memory above 56K became a 
RAM disk. By now. as you 
probably have suspected, my 
hobby is with both hardware 
and software. As an engineer. I 
could have afforded to buy eve- 
rything already designed and 
built, but I have a lot of fun 
doing my own Interfacing and 
writing the software for it. 

The HELIX, with It's com- 
patible S64 and S30 buses, was 
"enhanced" with some of the old 
S50 and S30 boards from the 
SWTPC system. I designed a 
homemade A/D Joystick board 
and a software controlled baud 
rate board. The printer was 
replaced with an Epson FX-80 
bl-dlrectional dot matrix 
printer. Later. I purchased and 
adapted the COCO OS9 level 1. 
to work in the Helix, which also 
used the extra memory for a 
RAM disk. I upgraded the 256K 
memory board to 1 Megabyte. 
Two more half size floppy drives 
were added. I wrote my own 
eprom monitor. The B com- 
mand automatically "boots" ei- 
ther the FLEX or OS9 system 
disks. In either case, the entire 



operating system, with all of the 
utility commands, are loaded 
into the RAM disk. This allows 
commands to be almost "in- 
stantaneous". This system was 
soon "supplemented" with an 
ATARI 520ST 68000 system in 
the fall of 1985. 

THE ATARI ST 

The 520ST had 512K of 
memory, a color RGB analog 
monitor, TOS in RAM. a GEM 
Desktop, a two button mouse 
with extra Joystick port, a 64K 
cartridge slot, an RS-232 serial 
Interface, an IBM parallel 
printer interface, a MIDI inter- 
face, hard disk Interface, and a 
single sided 360K 3.5" external 
disk drive. This was called a 
"Color Mac". The system was 
supplied with Logo. Basic, First 
Word, and Neochrome and the 
price was under $10001 Soon 
the TOS in ROM became avail- 
able for $30, and was Installed. 
This 192K operating system 
now boots up In a few seconds, 
without even needing a floppy 
disk. Many command shells are 
available. This allows us old 
timers to use either the stan- 
dard mouse or the old familiar 
MS-DOS command line. 



40 



Much SO 



68 Mcro Journal 



IBM MS-DOS CAPABILTT 

Now the amazing thing, that 
I found out. was that the ST 
uses the MS-DOS disk directoiy 
structure. It Is "IBM compat- 
ible". 1 soon added an external 5 
1/4" 360K drive. I spliced an 
ATARI 14 pin cable to a stan- 
dard 34 pin flat lead cable and 
added it as drive B:. The "select" 
pull-up resistor had to be dis- 
connected so that the ST could 
select it. My drive requires a 
"poke" to change the drive step 
rate from 3 to 6 milliseconds. I 
now have a machine that allows 
me to take IBM floppy disks 
home from work. I can edit IBM 
ASCII files at home. Both the 
IBM and ST store CR/LF char- 
acters at the end of each line. 
They both also allow TAB char- 
acters to be used. We wrote a 
FORMAT utility, that elimi- 
nated the need to foimat the 
disks on the IBM. 

Soon, with the aid of 
ATARI'S programmers develop- 
ment package, I was able to port 
my own Editor and Basic inter- 
preter over from the HELIX to 
the ST. via RS-232. I have ex- 
panded the ST memoiy to 1 
meg. I added an ATARI SH204 
hard disk drive. The drive is 
really a standard 20 meg with 
an Adaptec controller. I parti- 
tioned it into C:. D:. and E: 
directories. The PC-DITTO pro- 
gram which emulates the IBM 
PC/Xr 8088 system, allows 
most of the IBM software disks 
to be inserted, and run directly 
on the ST. It even allows the 
user to boot up drive C: as an 
XT. and dilve D: as an ST. The 
emulation speed, with the 
68000. Is about half as fast as a 
PC/Xr. but the best of both 
worlds are usable on one ma- 
chine. The ST easily emulates 
the IBM color or monochrome 
boards with its 80 column, low 
resolution. 200 by 320. eight 
color system. The ST has more 
capability with eight levels for 
each color. 



CPM 80 CAPABILITY 

The GENIE bulletin board 
system, that is available in all 
major cities, has very low eve- 
ning rates. There are over 8000 
public domain CPM 80 files that 
are available on this system. 
There Is a public domain CPM 
80 emulator for the ST. that 
runs as fast as an actual 2 MHZ 
Z80 system. 

MACINTOSH CAPABILTY 

There Is now available a 
"Magic Sac" cartridge that plugs 
Into any 520ST. 1040ST.MEGA 
ST2. or ST4 cartridge slot. It 
allows the user to throw away 
his old Mac and use the Mac 
ROMs in the ST. It runs most of 
the Macintosh programs, with a 
wider screen and graphics reso- 
lution. The increased ST mem- 
ory allows the Macintosh oper- 
ating system software to be put 
In RAM disk. There Is a dramatic 
Improvement In speed, because 
the system software doesn't 
have to reside on the user's 
disk. MAC owners are amazed 
to see their old familiar software 
run on the ST. without any 
modifications. 

A hardware Interface allows 
the SI" floppy disk to operate 
with either a It's Macintosh type 
diskcontroller, or with the stan- 
dard 1772 controller in the ST. 
This eliminates the need to 
convert Macintosh formatted 
disks to ST formatted disks via 
RS-232. 



ST 
SOFTWARE AVAILABILITY 

Many thousands of public 
domain files are free for the cost 
of the time to download them 
from bulletin board systems. 
GENIE has over 5000 ST files in 
it's libraries. Our St. Louis 
ATARI computer store, has over 
800 programs that can be or- 
dered and received In less than 
three days. I counted over 200 
different programs "on the 
shelf*, for the ST and Mega ST. 
Many of these are games, but 
over one half of them are not: 

5 Accounting 
35Adventure Games 
3 Computer Emulators 
2 Databases 

2 Desk Top Publishing 
lfiEducational 
30Graphic Arts 

S Home Management 
S Language Compilers 
60Misc. Games 

3 Modem Terminal Emulators 
5 Music Composer Players 

2 Shell Debuggers 
15Sports Games 

3 Spreadsheets 

4 Text Editors 

3 word Processors 

CONCLUSION 

I encourage ST users to 
submit and share their ideas in 
this magazine. Included are 
some utility programs, that are 
written for the ST. I submit 
them as public domain software 
for others ST enthusiasts to use 
or modify as needed. I believe 
that the new ATARI MEGA ST. 
which has the faster "Blitter* 
and it's affordable cost, will 
become a common 68000 ma- 
chine. The ST has already done 
this, both In North America and 
In Europe. 



S8 Micro Journal 



Mart* '66 



41 



& 



s 

s 
8 



14 pin 




Din 




mala 




Ground 


3 1 


Index 


< 1 


Drive o 


1 1 


Drive 1 


s 1 


Ground 


7 1 


out 


e i 


In 


* i 


Step 


10 1 


Kilt* 


n i 


Gate 


13 1 


Track 


13 1 


Protect 


14 1 


Read 


1 1 


Sid* 


2 1 

a 
1 



ATARI ST 
S 1/4* DRIVE CABLE 



— I 1 
I 2 

•-I 3 
I 4 

--I S 
I S 

— I 7 
S 
9 



-I-- 

o — 

-I — 

o 



-110 
-111 
-112 
-113 
-o 114 

o IIS 

-I US 

o 117 

-> lie 

o US 

-I 120 

s 121 

-I 122 

o 123 

-) 124 

e us 

-) 12* 

o 127 

121 

12« 

130 

131 

132 



-)- 



GMD 34 pin female edge 
connector to IBM 
compatible double 
aided double density 
40 track drive. 

DS3 Remove Pull up Res. 
Set switches for 
DSC and IK. 
Reaove Term! nator. 

All odd pins are SND 



DS0 



DS1 



DS2 



\ 133 

134 

( I 

spade lug chassis around 



/* Colored Bat Drawing Program */ 

/* by Jeff Randall */ 

/• Public rr renin Soft aara */ 

•include "osblnd.h* 

extern float sqrt(); 
extern float sin(); 

lnt oontrl [ 12] , lnt In [ 128] , ptsln 1 128] . 
intout[128],pt*out [128], handle, 
vhand.chstat, wchar,alldone,paolor, 
asca,oldpal|16],xy[4I; 



/• Define HBO Information •/ 

lnt header[2] - (0x0000,0x0000); 

int data [46] - 

( 

0x3020, 0x2020, 0x2020, 0x2020, 0x2e20, 0x2020, 0x801e, 0x0000, 

0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 

0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 

0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 

0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 

0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 

I; 

/* Define Colors •/ 

int palette 1 161 - 

I 

0x0000, 0x0700, 0x0730, 0x0750, 
0x0770, 0x0470, 0x0070, 0x0075 , 
0x0077, 0x0057, 0x0027, 0x0007, 
0x0507, 0x0707, 0x0704, 0x0702 

); 

static int cofset[16] - 

( 

0, 2, 3, 6, 4, 7, 5, 8, 9, 10, 11, 14, 12, 15, 13, 1 

I; 

double sqin,sqout; 

long fhand. lchar, alphys; 

char decimal [20]; 

/* Main processing routine */ 



main I) 

( 

float getfltO,- 

int i,l_intin[ll],l_out[57], 

gr_l,gr_2,gr_3,gr_4, l_ptsln[20], 
a,b,count,climit,cdivfac,p,q,xl,x2,xl,xi, xp,yl, y2,yp, zi, zp.zz; 

float xf.xr, xt.xx.yf ,yr,yy,zf ,zt; 

/* Start the program! */ 

appl_inlt (); 

handle«graf_handleUgr_l, *gr_2, 4gr_3, tgr_4) ; 

/* open workstation */ 

for (i - 0; i < 10; !+♦) 



g 



1 intlnll] - 1; 


yy-(sln(xt) + .«*sin(3'xt)) *yf; 




l_intin[10] - 2; 


x2-xl ,- 




v_op»vwk(l_intin, (handle, 1 out); 


y2=yl; 




v hide c (handle) ; 


xl-xx+zz*p; 




for (1-0; i<16; *»♦) 


yl=yy-zz+q; 




oldpaltil - setcolor(i,-l); 


if(xl<x2) 




slphys-physbase ; 


( 




vam type (handle, 1); 


x2-xl; 
y2-yl; 




/* main program loop */ 


> 
for(b-l-a; b<-a-l; b++) 




alldone=0; 


( 




while (alldone =- 0) 


pcolor-0; 




< 


vsl_color (handle, cof set [pcolor]) ; 




v_clrwk (handle) ; 


xy(0]-xl+b; xy(l]-199-yl; xy[2]-xl*b; xyS3)-199; 




setpallete (oldpal) ; 


v_pllne (handle, 2, xy) ; 

chstat"bcon3tat (2) ; 




/* Input Hat pararaeters */ 


If Ichstat !- D) 

i 




crlf 0; 


\ 
b-a; 




promp? (*P-*) ; 


xi-xl+1; 




p-getflt (); 


zl»q; 




proin>tl*0-"); 


) 




o=<jetflt(); 


> 




profl*>tC*XP.») ; 


p olor-(1.1*yf+yy)/5; 




xp-gotfltO; 


while (p lor>14) 




proti«>t<*YP =>"),- 


pcolor=pcolor-15; 




yp=3»tf It ; 


vsl color (handle, cof set [pcolor *l]) ; 




prompt ("2P-") ; 


xy(0]-x2; xy[l]-199-y2; xy[2]=xl; xy [3)-199-yl; 




zp-getf It ; 


v_pllne (handle, 2, xy) ; 




prompt ("Resolution (1 to 10) ") ; 


} 




a«gatflt (); 


> 




xr-l.S*3.H1593; 




yr»l; 


/* Hat done, wait for key */ 




xf-xx/xp; 






yf-yp/yr; 


chstat-0; 




zf»xr/zp; 


while (chstat — 0) 




xl-9999; 


chstat^bconstat (2) ; 
lchar m bconin(2); 




v_clrwk (handle) ; 


wchar - lchar i OxOOFF; 




setpallette (palette) ; 


/* Check for RETURN */ 




/* Process the PI ture */ 


if (wchar — OxOOOd) 




for(zl-0-q; zi<-q-l; zi«zi+a) 


( 




( 


alldone»l; 




If ((zl>-0-zp) It (zl<-zpl) 


) 




{ 


else 




zt-zi*xp/zp; 






zz-zi; 


/* Check for fun tion key Fl */ 




xl"Sqrt(xp*xp-zt*zt)+.S; 






for(xl-0-xl; xl<-xl; xl-xi+a) 
t 


if (lchar -- 0x003b0000) 




l 

xt-sqrt (xl*xi+zt*zt) *xf ; 


\ 

fhand»f create U*colorhat .neo*,0); 




xx-xl; 


if [fhand >• 0) 





t 



s 



I 


cconout (10) ; 


decct-0; 






vhand-fhand; 


) 


1 
else 






/• Write header (4 bytes) •/ 


/• Accept Y/N response •/ 


iflfltwkllnctl -- 99) 
j 






fwrite (whatKi,4L, (header) ; 


yesnoO 

{ 

int exit, yom; 


t 
negct-0; 

) 
) 






/• Write color palette (16 words) •/ 










else 






fwrite (whand, 321, (palette) ; 


exit - -1; 
while (exit < 0) 


if (uchar — OxOOOd) 
( 






/* Write neo data (92 bytes) ■/ 


( 

yom ■ bconin(2); 


if ( (inct-decct-negct) > 
( 


0) 




fwrite(whand,92L.idata) ; 


if ((yorn — 0x004e) II (yom — 0x006e)) 
{ 


crlfO; 
fltwklinct]- -1; 






/' Write picture data (32000 bytes) •/ 


print ("No") ; 
exit - 0; 


getfx-1; 

) 






fwrite (whand. 32000L, slptiys) ; 


) 


) 






fclose(whand) ; 


else 


if (inct < 19) 






alldone'l; 


if ((yorn — 0x0059) II (yom — 0x0079)) 


( 






J 


( 


ifKwchar > 0x002f) t» 


(wchar < 




> 


print ("Yes") ; 


0x003a) ) 






> 


exit-1; 

1 


( 
fltwk[inct]-wchar-48; 






/• Close the workstation. •/ 


} 
return (exit) ; 


inct++; 
cconout (wchar) ; 






v clsvwk (handle) ; 


} 


) 






Mtpallete (oldpal) ; 




else 








/* Accept floating-point number */ 


ifKwchar — 0x002d) it 


(negct — 


0) 


applexitl); 




(( (inct — 0)1 






_exit (0) ; 


float get f HO 
{ 


( 
negct++; 






J 


int i.getfx, inct.negct,deact,decfnd; 
float vork.mfac, lnnum; 


fltwk[inct]«99; 
lnct++; 






/* Print strinq w/ CR C LF •/ 


static int fltwk|20); 


cconout (wchar) ; 
) 
else 






print (string) 


cconout ('?'); 






char 'string; 


negct-0; 


ifKwchar — 0x002e) tt 


(decct — 


0)) 


< 


decct-0; 


( 






cconws(string); 


inct-0; 


decct**; 






crlf I); 


getfx^O; 


fltwk[inct]-98; 






) 


uhilelgetfx •• 0) 
( 


inct++; 
cconout (wchar) ; 






/• Print string (no CR/LF) •/ 


chstat-0; 

while (chstat — 0) 


) 

) 






proof*, (string) 


chstat-bconstat (2) ; 


) 






char 'string; 


lchar - bconin(2); 


decfnd-0; 






( 


wchar • lchar i OxOOFF; 


innum*0; 






c conns (string) ; 


if ((wchar — 0x0008) it (inct > 0)) 


rofac • 10; 






} 


( 

cconout (8) ; 


for(i«0; Kinct; i++) 
( 






/* Output CR/LF to screen */ 


ccoiout (32) ; 
cconout (8) ; 


iflfltwkli] — 98) 
( 






crlf () 


inct-; 

if (fltwklinct) -- 98) 


decfnd = 1; 
) 






cconout (13) ; 


{ 


•Is* 







s 

I 

o 

i 






f 

s 



if (flf.wkfi) < 10) 
( 

if tdtecfod -- 0) 
( 

innum»innum*10.0; 
i nnum» innun* f ltwk [ i ] ; 
) 
else 
( 

work-fltwkUI; 
work»work/rafac; 
innum>innum+work; 
mfac««fac * 10.0; 
I 
) 
I 
iffnegct — 1) 

innum = -innun»; 
return (innum) ; 



) 



/* 40 Track Format program •/ 
/* by V 

/* JafCray Kaodall */ 



I include 
(include 



'define. h" 
\>»bind.h" 



int contri;i2],intin[128],ptsin[128],intout[128],ptsout [128J, 
error, errcnt, tiandle.gr l,gr_Z,gr_3,gr_4, i, l_intin [11], l_out 1 57], 
t.chr, type-1, flag-0; 

long amount, filler, serrtO»l,magic-0x97654321; 

cliar buffer [10000]; 

malnO 

( 

appl_init ; 

handle - graf_handle (lgr_l, Sgr_2, *gr_3, *gr_4) ; 

for(i-0;i<10;l++) l_intin{i)-l; 

l_intln[10)»2; 

v_opnwk(l_int in, (handle, l_out) ; 

v_hide_c(hai>dle); 

v_clrwk (handle) ; 

Cconout (27) ; 

Cconout (69) ; 

error ■ puts!" 

error ■ putsl* 

error ■ puts!" 

error » puts!" 

Cconout (10) ; 

error - puts!" 



Format 4 Ver 1.0 »•) 
by Jeff Randall •") 



This program will format an*) , 



error - pita(* IBM 40 track DSDO disk in drive Bl"); 

error ■ put-(* Press *Y" to format"); 

error - puts(" or any other key to abort!"); 

while (8constat(2) 1- 0) chr=Bconin (2) ; 

chr-Bconin (2) ; 

if (chr -- ■»• I chr — »y' ) 

( 

Cconout (13) ; 

Cconout (10) ; 

error ■ print f(* I"); 

Cconout (13) ; 

for(t«0; (t<40) ( (errcnt < 5); t + + ) 

( 

error - printf (*!"); 

error ■ 1; 

errcnt ■ 0; 

while ((error ! = 0) ( (errcnt < 5)) 

{ 

error ■ Flopfmt ((buffer, filler, 1, 9, t, 0,1, magic, OxESES) ; 
errcnt - errcnt ♦ 1; 
) 

if (errcnt < 5) 
( 
error ■ 1; 
errcnt - 0; 

while ((error !- 0) ( (errcnt <5>) 
( 

error - Flopfmt {(buffer, filler, 1,9, t, 1, 1, magic, 0xESE5) ; 
errcnt ■ errcnt + 1; 
) 



for(t«0; t<S12; t++) bufferit] - 0; 
for(t-l; (t<10) ( (errcnt < S) ; t + + ) 
( 

error - 1; 

errcnt - 0; 

while ((error !- 0) t (errcnt < 51) 

( 

error - Flopwr ((buffer, filler, l,t, 0,0, 1) ; 
errcnt - errcnt + 1; 

I 
) 

for(t-l; (t<10) ( (errcnt < 5); t++) 
( 

error ■ 1; 

errcnt - 0; 

while ((error !■ 0) ( (errcnt < 5)) 

< 

error - Flopwr ((buffer, filler, l,t, 0, 1, 1) , 
errcnt ■ errcnt + 1; 

) 



) 

buffer (0) - OxFO; 

buffer(l) - OxFF; 

buffer [2] - OxFF; 



& 



s 

£ 

8 

I 



If (errcnt < 5) 
< 

error ~ 1; 

errcnt - 0; 

while ((error !- 0) ( (errcnt < 51) 

( 

error - Flopwr ((buffer, filler, 1,2,0,0,1) ,- 
errcnt ■ errcnt + 1; 

\ 
I 

if (errcnt < 5) 
t 

error « 1; 

erroit ■ 0; 

while ({error !- 0) t (errcnt < 51) 



( 



error « Flopwr {(buffer, filler, 1, 4,0,0, 1) ; 
errcnt - errcnt + 1; 
t 
) 

buffer [0) • 0; 
buffer(l) - 0; 
buffer [2 ) - 0; 

Frotobt ((buffer, serno, type, flag) ; 
if (errcnt < S) 
t 
error ■ 1; 
errcnt - 0; 

while ((error !- 0) t (errcnt < 5)) 
( 

error - Plopwr ((buffer, filler, 1,1,0,0, 1) ; 
errcnt ■ errcnt + 1; 
I 
> 

if (errcnt > 4) 
< 

printf ("\nError l%d Format ABORTED !", error) ; 
} 
) 

Cconout (13) ; 
Cconout (10) ; 

if (chr = **' I chr — 'y* ) 
( 

error ■ puts ('Press any key to return to desktop"), 
chr-Bconin(2) ; 
I 

vcisvwk (handle) ; 
appl_exit ; 
exit(0) ; 



TIL SPOOL. S Spooler Prograa for AJARI ST 

* Public Domain 

• 

* The SPOOL. TTP program accepts a parameter number 

* of 1 to 999. This number is the number of Kbytes that 

* it reserves in memory to buffer all characters that are 

* sent to the printer via the BIOS Bconout function. 

* The default value for a zero value is 50 (K) . Then the 

* program terminates and stays resident, until the system 

* is rebooted. If the buffer becomes full and the printer 

* is not ready for 30 seconds, then a printer not-ready 

* status is returned. 



PRN 


BQU 





PRINTER OUTPUT DEVICE 


GEHDOS 


EQU 


1 




BCONOUT 


EQU 


3 


CONSOLE CHAR OUTPUT 


SETEXBC 


EQU 


5 


SET EXCEPTION VECTOR 


CONSTAT 


EQU 


8 


CONSOIZ OUTPUT STATUS 


WPINT 


EQU 


13 


WP INTERRUPT INSTALIED 


BIOS 


EQU 


13 


ST BIOS TRAP 13 


XBIOS 


£QU 


14 


ST XBIOS TRAP 14 


ISRB 


EQU 


16 


INTERRUPT SERVICE REG B 


TIMEOUT 


EQU 


30 


30 SECONDS TIMEOUT 


KEEP 


EQU 


$31 


HOLD RESIDENT PROGRAM 


SAVPTR 


EQU 


S4A2 


BIOS SAVE AREA/REGISTER 


HZ 200 


EQU 


$4BA 


200 HZ COUNTER 


KFP 


EQU 


SFFFA01 


MfP 68901 


PSG 


EQU 


SFF8800 


PSG YM 2149 



.TEXT 



SPOOL 



MOVEA.L 

MOVE.L 

ADD.L 

ADD.L 

ADD.L 

MOVEQ 

MOVEQ 

LEA 

NEXTCHR MOVE. B 
SUBI.B 
BMI 

CJPI.B 
BGT 
MULU 
ADD.W 
CW.L 
BLO 

EXIT TST.W 

BNE 

HJVE .« 

EXT.L 

MOVEQ 

LSL.L 



,D6 
,D6 



OK 



4(A7),A0 

1256,06 

12{A0),D6 

20 (AO) , 

28 (A0), 

10, D7 

10, DO 

129<AO),A0 

(A0)«,D0 

I'O'.DO 

EXIT 

19,00 

EXIT 

110, D7 

D0,D7 

I100,D7 

NEXTCHR 

D7 

OK 

150, D7 

D7 

110, DO 

D0.D7 



GET BASE PAGE ADDRESS 
BASE PAGE SIZE 
+ TEXT SIZE 
+ DATA SIZE 
+ BSS SIZE 



PARAMETERS ADDRESS 

GET REQUESTED BUFFER SIZE 

NOT A MUfBEB DIGIT 

GOOD DIGIT 
3 DIGITS MAXIMUM 
NUMBER NON-2ERO? 
NO, USE S0K 

TIMES 1024 (IK) 



s 

§ 

I 



s 





ADD.L 


07, 06 


BYTES NEEDED 














hove.l 


07, LENGTH 


ENTER IN IOREC 


PRINT 


MOVE 


IS2700.SR 


INTERRUPT BLOCK 






MOVE.L 


ITRAP13,-(A1) 


vac 




BSR 


CETPTR 


POINTER TO IOREC I MFP 






MOVE.W 


#4S,-(A7) 


VBCNUM FOR TRAP 13 




MOVE.L 


TAIL(A0),D2 








MOVE.W 


IS£TEXEC,-(A7) 






CMP.L 


HEAD(A0),D2 


BUFFER EMPTY? 






TRAP 


IBIOS 


SET VECTOR 




BNE 


INBUFF 








ADOQ.L 


18, Al 






BTST 


10, (Al) 


PRINTER BUSY 






MOVE.L 


DO, TRAPSVE 


KEEP OLD VECTOR 




BNE 


INBUFP 








MOVE.L 


IBUSYINT, - (A7) 




NOTBUSY 


LEA 


PSG.A2 


PSG ADDRESS 






MOVE.W 


10,- (All 


INTERRUPT NUMBER 




MOVE.B 


115, (A2) 


PORT B 






MOVE.W 


•MFPINT,-(A7> 






MDVE.B 


Dl,2(»2) 


OUTPUT A BYTE 






TRAP 


IXBIOS 


PRINTER INTERRUPT ENABLED 




MOVE.B 


114, (A2) 


PORT A 






AODO.L 


18, Al 






MOVE.B 


(A2),D0 








cia.w 


-(AT) 






ANDI.B 


ISDF.DO 


STROBE LOW 






MOVE.L 


D6,-(A7] 


NUMBER OT BYTES 




MOVE.B 


O0,2(A2) 








MOVE.W 


IKEEP,-(A7) 


TERMINATE AND STAY RESIDENT 




ORI.B 


l$20,D0 


STROBE HIGH 






TRAP 


IGEMDOS 






MDVE.B 
MOVEQ 


DD.2IA2) 
1-1, DO 


OK 




■ 


NEW TRAP 113 ROUTINE 






RTS 








TRAP 13 


MDVEA.L 


A7,A2 


MARX SSP 


INBUEF 


MOVE.L 


TAIL(A0),D2 


INCREMENT WRITE POINTER 






BTST 


15, |A7) 


SUPE VISOR CALL? 




BSR 


WRAP 








BNE 


SUPER 






CMP.L 


HEA0(A0),D2 


BUFFER FULL? 






MOVE 


USP.A2 


NO, USE USER STACK POINTER 




BEO 


BUFFO LL 








SUBQ.W 


I6.A2 




INBUF1 


MOVEA.L 


(A0),A1 


NO, BUFFER ADDRESS 




SUPER 


CMPI.W 


I8C0N0UT,6(A2> 


BCONOUT CALL? 




MOVE.B 


D1,(A1,D2.L) 


WRITE CHAR TO BUFFER 






BNE 


NORMAL 






MOVE.L 


D2, TAIL (AD) 


NEW TAIL INDEX 






cmpi.w 


IPRN,8(A2) 


PRINTER CA[L? 




MOVEQ 


1-1, DO 


OK 






BNE 


NORMAL 






RTS 










M0V8A.L 


SAVPTR, Al 
















MOVE.W 


(A7)+,-<Al) 


SAVE STATUS 


8UPFULL 


MOVE.L 


HZ_200,D0 


SECONDS TO WAIT 






MOVE.L 


(Al)+,-<Al) 


SAyE RETURN ADDRESS 




ADDI.L 


1200 "TIMEOUT, 


DO 






MOVE.L 


Al, SAVPTR 


SAVE PTR UPDATES 




MOVE 


l$2300,SR 


INTERRUPTS FREED UP 






MOVE.W 


10(A2),D1 


GET CHAR 


WAIT 


CMP.L 


HEAD(A0),D2 


MORE ROOM IN BUFFER? 






BSR 


PRINT 






BNE 


INBUF1 








MDVEA.L 


SAVPTR, Al 






CMP.L 


Hl_200,D0 


NO, TIME UP YET? 






MOVE.L 


IAl)+,-{A7) 






SHI 


WAIT 








MOVE.W 


(All+,-(A7) 






MOVEQ 


•0.D0 


NOT OK 






MOVE.L 


Al, SAVPTR 






RTS 










RTE 
























• INTERRUPT ROUTINE TO OVTPU1 


CHARS TO PRINTER 




NORMAL 


CMPI.W 


•CONSTAT, 61A2) 


PRINTER STATUS? 














BNE 


N0RM1 




BUSYINT 


MOVEM.L 


D0-D2/A0-A2,- 


(A?) SAVE RBGISTERS 






CM>I.W 


IPRN, 81A2) 






BSR 


GETPTR 


GET POINTERS 






BNE 


N0RM1 






MOVE.L 


READ (AO), 02 








MOVEQ 


1-1,00 


STATUS OK 




CMP.L 


TAIL (AD), 02 


BUFFER EMPTY? 






BSR.W 


CETPTR 


GET POINTER 




BEO 


EMPTY 








MOVE.L 


TAIL(A0),D2 






BSR 


WRAP 


NO, BUMF READ POINTER 






BSR 


WRAP 






MDVEA.L 


(A0),A2 


GET BUFFER ADDRESS 






CMP.L 


HEAD(A0),D2 


ROOM IN BUFFER? 




MOVE.B 


(A2,D2.L),D1 


GET CHAR FROM BUFFER 






BNE 


ROOM 


YES 




BSR 


NOTBUSY 


OUTPUT TO PRINTER 






MOVEQ 


to, 00 


NO, BUSY, NO ROOM 




MOVE.L 


02. HEAD (AO) 


NEW READ POSITION 




ROOM 


RTE 






EMPTY 


8CLR 


10, ISRB(Al) 


CLEAR SERVICE BIT 














MOVEM.L 


(A7I*,D0-D2/A0-A2 RESTORE 




NORM 


MDVEA.L 
JMP 


TRAPSVE, AO 
(AO) 


TO OLD TRAP #13 




RTE 









GETPTR 


LEA 


IOREC,AD 




LEA 


MFP,A1 




RTS 




rtRAP 


ADDO.L 


11,02 




CMP.L 


LEN(A0),D2 




BIO 


NOWRAP 




H0V2Q 


10,02 


NOWRAP 


RTS 





.DATA 



.BSS 



TRAPSVE DS.L 
BUF EQU 



BUFEBR FILE RECORD PTR 



POINTER TO NEXT POS. 
END OF BUFFER? 



YES, START AT TOP 



.TEXT 



IOREC 


DC.L 


BUF 


BUFFER ADDRESS 


LENGTH 


DC.L 


1 


BUFFER SIZE 




DC.L 





WRITE INDEX 




DC.L 





READ INDEX 


BUFFER 


EQU 





IOREC BUFFER ADDRESS 


LEN 


EQU 


A 


IOREC BUFFER LENGTH 


HEAD 


EQU 


8 


IOREC WRITE PTR 


TAIL 


EQU 


12 


IOREC READ PTR 



TRAPI13 VECTOR SAVE 
START OF BUFFER ME^RY 



.TTL 



SLOM.S D.E. Randall PUBLIC OCMMM 



SETS ST OR MEGA ST DRIVE B: 
STEP RATE = 6 MILLISECONDS 
PUT SLOW.PRG IN AUTO FOLDER 



SlOW 


MOVE.L 


JSTACK,SP 


USER STACK AREA 




cir.l 


A6 


A6 = 




SSR 


SMOOE 


SUPERVISOR MOOE 




CMP 


#3,INMEGA(A6) 


KEGA TOS IN ROM? 




BNE 


NOTl 






ci a 


INMEGA ( A6) 


6 MSEC STEP RATE 




BRA 


EXIT 


FOR DRIVE 8 


NOT1 


CMP 


#3, INROMIA6) 


ST TOS IN ROM? 




BNE 


NOT2 






CIR 


INROM1A6) 


6 MSEC STEP RATE 




BRA 


EXIT 


FOR DRIVE B 


NOT2 


CMP 


I3,INRAM(A6) 


ST TOS IN RAM? 




BNE 


EXIT 






CIR 


INRAMIA6) 


6 MSEC STEP RATE 


EXIT 


BSR 


UMODE 


USER MOOE 




CIR 


-{SP) 


PtetmO 




TRAP 


IGEMDOS 


RETURN TO SYSTEM 


SMODE 


CLR.L 


DO 




IDOD£ 


MOVE.L 


DC,-(SP) 


SYSTEM STACK PTR 




MOVE 


ISupei, - (SP) 






TRAP 


IGEMDOS 


USER MOOE 




ADD.L 


16, SP 






RTS 







.BSS 



DS 252 

STACK : DS 4 



-END 






GEMDOS 


EQU 


1 


TRAP 11 


Super 


EQU 


32 


GEMOOS SUPERVISOR MOOE 


INMEGA 


EQU 


SA52 




INROM 


EQU 


SAOC 




INRAM 


EQU 


S6CE 





FOR THOSE WH 




68 MICRO 



JOURNAL 



TM 



Bit-Bucket 




By: All of us 

XoMTibiU Tfrthing ■ -Eigxct O^ptfting', DMW '86 



1708 Piedmont St. 
Jackson, MS 39202 
26 December 1987 

Editor 

68 Micro Journal 

Hixson. TN 37343 

Deo Mr. Williams: 

Please find enclosed a 5" Flex disk SSSD, which contains a file 
named Index87.txt. This is the 1987 Key Word Index for 68 Micro 
Journal which has now became an annu al holiday tradition for me. 
As you will remember, this index uses key words to facilitate 
searches for a specific topic or article, using a utility such as Leo 
Taylor's Find.cmd. You may publish it. use it. or distribute it as you 
see fit I hope you Ftnd it as useful as I have over the years. 
I must confess to having been templed by "other brands" this past 
year, but have not succumbed. I did upgrade my 6809 system to 2 
mhz and added a ram disk from D. P. Johnson. Now my system is 
so blaztngly fast that I guess I would have to gel an AT with hard disk 
to equal its speed. It looks like I'll be a 6809 Flex single user for 
some lime to come. 

Sincerely, 
John D. Current 

JAN 87 PS ANDERSON USER NOTES BURNOUT PROGRAM 
ORGANIZATION UOYD IO ED CRACKER CRASMB 
JAN 87 P12 PASS C USER NOTES PROPOSED ANSI STANDARD 
HEADER FILES MATHEMATICAL FUNCTIONS B+ TREE 
LISTING 

JAN 87 PI8 VOIGTS BASIC OS9 COLUMN RESERVING MEMORY 
RMB DEVICES KBASIC LISTING 

JAN 87 P21 GROSS ARTICLE MOIOROLA I A YOUT DESIGN 
VLSI CRITICAL PATH METHOD CPM CAD 
JAN 87 P25 VOIGTS DESCRIBES BASIC09 TOOLS OS9 FUNC- 
TIONS COMPILER WARNINGS PARSE CHARACTER STRINGS C 
LISTING 

MAR 87 P18 VOIGTS BASIC OS9 PIPES WORD WRAPAROUND 
WRAP.C USnNG 

MAR 87 P22 MACINTOSH SECTION SPELI SWELL SPELLING 
CHECKER 

MAR 87 P25 LURIE FORTH TUTORIA L ANSI GRAPHICS ESC 
SEQUENCES FORTH LISTING 

MAR 87 P29 BAUTSKI ARTTCLE BUILD AN RS232 BREAKOUT 
BOX 

MAR 87 P36 CURRENT ARTICLE 1986 KEY WORD INDEX TO 68 
MICRO JOURNAL 

MAR 87 P40 TAYLOR HIER UNIX LUCE UTJUTIES CONT. C 
LISTINGS 

MAR 87 P42 JONES LETTER TSC XBASIC MAX LINE LENGTH 
RANDOM FILES 



MAR 87 P44 DREXLER ARTICLE REALTIME CLOCK FOR FLEX 
MSMS832 PIA ITMECMD 6809 ASSEMBLY LISTING SCHEMATIC 
APR 87 P8 PASS C USER NOTES ANSI C STANDARD IMPLEMEN- 
TATION SPECIFIC DEPENDENCIES ENUMERATED DATA TYPES 
C LISTING 

APR 87 P14 VOIG1S BASIC OS9 BASIC09 HUNT USING DISK 
HIERARC1IY AND INTEGRITY CHECKER HCHECK BASIC09 
LISTING 

APR 87 P19 S1RAUB ARTICLE INTERFACING MC68881 FPCP 
WITH MC6809 CPU SCHEMATIC PL9 LISTING 
APR 87 P25 LURIE FORTH TUTORIAL NULL MODEM FILE 
TRANSFER FORTH LISTING 

APR 87 P2« WILLIAMS RAMBLINGS OS9 VERSIONS "PAKS" 
MUSTANG08 FLEX ON 68000 OS9 ARCHIVE 
APR 87 P37 MACINTOSH SECTION BATTERY PAK DESK 
ACCESSORIES 

APR 87 P38 STAFF REVIEW SIM68K 68000/680 10 SIMULATOR FOR 
IBM PC 

APR 87 P39 WO.LER REVIEW XDMS DBMS DATA BASE MAN- 
AGEMENT WESTCHESTER APPLIED BUSINESS SYSTEMS 
APR 87 P41 LAVOREL FLEX UTILITY LOCCMD FTND A SE- 
QUENCE OF BYTES IN BINARY FILE 6809 ASSEMBLY LISTING 
APR 87 P45 TAYLOR HIER UNIX LIKE l/nUTTES CONT. 6809 
ASSEMBLY LISTING 

APR 87 P47 BURLINSON LETTER BUGS BASED!! AFHX.CMD ON 
UNIBOARDSBC 

APR 87 P47 WILLS LETTER FIX FOR TSC PR.CMD ADD CONTINU- 
OUS COMMAND LINE BUFFER 6809 ASSEMBLY LANGUAGE 
APR 87 P49 MOIOROLA ANNOUNCES M68HC05EVM 6805 
EVALUATION KIT 

MAY 87 P8 PASS C USER NOTES COMMAND LINE PROCESSING 
COMMA OPERATOR TOWER OF HANOI GAME C LISTING 
MAY 87 P14 VOIGTS BASIC OS9 DOCUMENTATION STANDARDS 
USTC LISTING 

MAY 87 PI9 ANDERSON USER NOTES WINDRUSH PLUS 68000 
COMPILER PL9 LIBRARY BUG AUTOCAD CONE VOLUME BASIC 
LISTING 

MAY 87 P22 LURIE FORTH TUTORIA L VIRTUAL MEMORY 
STRING CONSTANTS LTTERALS BOOK REVIEW 
MAY 87 P26 WELLER REVIEW SOFTOOLS FLEX U7TL1TES 
WRTTTEN IN PL9 SOFTWARE TOOLS 

MAY 87 P29 JONES ARTICLE TSC XBASIC EXPLAINED TOKEN 
HASHING TABLES ERROR MESSAGES STOP RND LIST 
MAY 87 P45 KING ARTICLE SERIAL COMMUNICATION MOTOR- 
OLA SPI SO 6805 MASTER SLAVE SCHEMATICS 
MAY 87 PSO MACTNTOS H SECTION STRIPPER CAUZTN 
SOFISTRIP SYSTEM 

JUN 87 P8 PASS C USER NOTES C USERS GROUP ROUNDOFF 
ERRORS CONVERT ASSEMBLER EQUATE FILES TO C LISTING 
JUN 87 P14 VOIGTS BASIC OS9 MACROS IN ASSEMBLERS 
EDITORS AND C 

JUN 87 P19 ANDERSON USER NOTES WINDRUSH PLUS FOR 
68000 PL9 PAT BUG STANDARDS OMEGASOFT PASCAL 
JUN 87 P23 MACINTOSH SECTION 512K RAM MEMORY UP- 
GRADE SCHEMATIC 

JUN 87 P25 LURIE FORTH TUTORIA L STACKS 
JUN 87 P28 STAFF REVIEW URDA P68000 MICROLAB NOTEBOOK 
COMPUTER 



66 Micro Journal 



March '88 



49 



JUN 87 P38 PASS REVIEW ED 68000 TEXT EDITOR 
JUN 87 P40 JONES ARTICLE TSC X BASIC EXPLAINED XPC 
PRECOMPII.ER XBASIC BUG CHAIN INT ASC VAL CHRJ STRS 
JUN 87 P49 MOTOROLA ANNOUNCES HIE MC68606 MULTT 
LINK LAPD CONTROLLER 

JUN 87 PSI DREXLER LETTER BUG ITX TIME CMD (APR 87) 
REAL TIME CLOCK 6809 ASSEMBLY LISTING 
JUL 87 P8 PASS C USER NOTES CONVERT TSC XBASIC ID C 
XPC COMPARE TWO FILES C LISTING 

JUL 87 PI3 VOIGTS BASIC OS9 DIRECTORIES INPUT BUFFER 
PROMPTED COPY PCOPY BASIC09 LISTING 
JUL 87 PI8 MACINTOSH SECITON MACUGHTNING SPELLING 
CHECKER DICIIONARY THESAURUS 

JUL87P2I LURIE FORTH TUTOR1A L 6S20 682 1 PI A PARALLEL 
INTERFACE ADAPTER SWTPC MPLA 10 FORTH LISTING 
JUL 87 P2S WILLIAMS RAMB LINGS BOOK REVIEWS 68000 
SYTEMS BY WILCOX MICROPROCESSOR SYSrEMS BY WIST 
A MEIKSIN COCO m 

JUL 87 P28 STAFF REVIEW BARTON LABS LAB6809 SSS0 CPU 
PROTOTYWN G PICOBUG MONITOR 
JUL 87 P38 RECMTLLER PASCAL TUTORIAL CERTIFIED 
SOFIWARE CONVERT MICROWARE TO OMEGASOFr ASSEM- 
BLER FILTER PASCAL LISTING 

JUL 87 P4I LAVOREL PROGRAM PRICOLBAS COLUMN 
PRINTING TSC XBASIC LISTING EPSON MX80 
JUL 87 P43 JONES XBASIC EXPLAINED NUMBER BASE 
CONVERSIONS INPUT INPVTUNE LSET RSET OVERFLOW BUG 
FIX 

AUG 87 P8 PASS C USER NOTES CONVERT BASIC TO C TSC 
XBASIC MICROWARE BASIC09 PAGINATE LIST OF FILES C 
LISTING 

AUG 87 PI4 VOIGTS BASIC OS9 SHELL CUSTOMIZING INPUT 
LINES BUILT IN COMMANDS DOUBLE STRIKE C LISTING 
AUG 87 PI9 MACINTOSH SECTION PAGE LAYOUT WORD 
PROCESSING READY SET GO 

AUG 87 P21 LURIE FORTH TXdORIAL UTTUTIES QX QUICK 
INDEX QLCOMPACT LIST FORTH LISTINGS 
AUG 87 P25 REIMILLER PASCAL TUTORIAL OMEGASOFr 
EDITOR COMMANDS LINKAGE CREATOR COMPILER DEBUG- 
GER 

AUG 87 P28 JONES TUIORIA L ON DESIGN OF DIGITAL 
CONTROL CIRCUITS BOOLEAN LOGIC SYMBOLS 
AUG 87 P42 JONES XBASIC EXPLAINED AND OR NOT SPIJT- 
TTNG OFF INSTRUCTIONS 

AUG 87 P46 GREGORIE ARTICLE PL9 INTERFACE FOR ISAM 
DOCUMENTATION 

AUG 87 P52 WILSON LETTER SHELL SORT 68000 ASSEMBLY 
LISTING 

SEP 87 n PASS C USER NOTES CONVIIRT BASIC TO C FILES 
OS9 MICROWARE C JUST BUG PL9 LISTING 
SEP 87 P20 LURIE FORT H TUTORJA L CLEAR DISK COMMAND 
LINE ARGUMENTS PARSING FORTH LISTING 
SEP 87 P22 JONES ARTICLE MATHEMATICAL DESIGN OF 
DIGITAL CONTROL CIRCUITS BOOLEAN ALGEBRA 
SEP 87 P38 EPROM EMULATTON FOR THE SSS0 BUSS SCHE- 
MATICS 6809 ASSEMBLY LISTING 

SEP 87 P42 LAW MAdNTOS II SECTION DOUG CLAPP'S WORD 
TOOLS COUNT SORT 

SEP 87 P44 JONES XBASIC EXPLAINED SPEED AND SHORTEN 
PROGRAMS 

OCT 87 P7 VOIGTS BASIC OS9 FILE ERRORS CRC VERIFY DATE 
C LISTING GETOPT 

OCT 87 P12 PASS C USER NOTES CONVERTING BASIC TO C 
TABLE OF EQUIVALENTS STATEMENTS ECHO C LISTING 
OCT 87 PI8 ANDERSON USER NOTES PLUS PATOS68K FILE 
READ WRITE PORT PLUS TO SKDOS 
OCT 87 P2I GROVES ARTICLE PASSWORD CHANGE OS9 
BASIC09 LISTING 

OCT 87 P26 WILLIAMS RAMBUNGS VAPORFACIS DESKTOP 
PUBLISHING 

OCT 87 P28 ANCHOR MACINTOSH SECTION DARX CASTLE 
GAME 
OCT 87 P38 KDXORAN ARTICLE TEXT HACKING COGNITIVE 



ENGINE CORP MU MACROPROCTlSSOR 
OCT 87 P40 JONES ARTICLE MATHEMATICAL DESIGN OF 
DIGITAL CONTROL CIRCUITS BINARY NUMBERS KARNAUGH 
MAP VEITCH DIAGRAMS 

OCT 87 P47 REIMILLER PASCAL TUTORIAL OMEGASOFr 
DEBUGGER 

OCT 87 P50 ANNOUNCEMENT GESCOMP GESPAC G64 MICRO- 
COMPUTER SYSTEM 

OCT 87 PS2 JONES XBASIC EXPLAINED MAX LINE LENGTH 
RANDOM FILES RBASIC 

NOV 87 P7 PASS C USER NOTES RCFER£NCES BOOK REVIEWS 
EXT R ACT STRINGS C LISTING 

NOV 87 P12 VOIGTS BASIC OS9 MODUt£ DIRECTORY SYSCALL 
MDIR LINK GETMODDIR BASIC09 LISTING 
NOV 87 PI6 WEST ARTICLE 68XXX BOARDS ON THE SID BUSS 
NOV 87 PI9 JONES ARTICLE DIGITAL CONTROL DTRCVrTS 
JMPLICANT CONTRADICTION AMBIGUITY COMBINATIONAL 
NOV 87 P2S AI.1AN ARTICLE CONVERT IBM XT KEYBOARD TO 
REPLACE CT82 SCHEMATIC 6805 ASSEMBLY LISTING 
NOV 87 P40 LAW MAdNTOS II SECIION CLIP ART WET ART 
WET PAINT HYPERCARD MULT1FINDER 
NOV 87 P42 REIMILLER PASCAL TUIORIA L €XTERNAL 
PROCEDURE OR FUNCITON CALLS VALIDATE PASCAL LISTING 
NOV 87 P45 LURIE FORTH TUTORIA L FIG FORTH INSTALLA- 
TION FLOORED MATT! CASE EXECUTION TIMES 
NOV 87 P48 CONDON ARTICLE BUILD THE GT4 GRAPHICS 
TERMIN AL SCHEMATIC 

NOV 87 P53 GREGORIE PL9 INTERf ACE FOR THE ISAM CONT. 
LISTING 

DEC 87 P7 PASS C USER NOTES PUBLIC DOMAIN PORTABLE 
MATH LIBRARY BY FRED FISH C LISTING MAC2UNIXC 
DEC 87 PI2 VOIGTS BASIC OS9 PASCAL P CODE SIMULTANE- 
OUS EQUATION SOLUTION BY CRAMER'S RULE PASCAL 
LISTING 

DEC 87 P17 JONES ARTICLE DIGTrAL CONTROL CIRCUITS 
SEQUENTIAL FLOW TABLE RELAY OSCILLATOR 
DEC 87 P23 MACINTOSH SECTION YIP TRANS LATORS FOR 
UGITISPEED C OR PASCAL LISTING 

DEC 87 P37 WEST ARTICLE 68XXX AND IHE STD BUSS CPU 
CARDS 2681 DUART SS30 

DEC 87 P40 LURIE FORTH TUTORIAL MODULAR PROGRAM • 
MING WORD NAMES FILE COPY UTILITY FOR IH LISTING 
DEC 87 P44 CONDON ARTICLE BUILD GT4 GRAPHIC TERMIN AL 
SOFTWARE CONTROL FUNCTIONS 
DEC 87 P48 BABIN ARTICLE LCD DRIVER WITH SERIAL 
INTERFACE CON IRAST VS VOLTAGE 

DEC 87 P52 BILL WEST ANNOUNCES STD BUSS PRODUCTS 
STD020 STDZS STD08R 68020 68008 

DEC 87 P53 MOTOROLA ANNOUNCES MC68HC05L6 MC68IICII 
MQS86Q6 MC68030 VME MVME374 



MICRgNICS 



GIMIV Sate*. Stt^uf «nJ Support 



1JM)LYNSA\fcNUE. 
ABBOTSFORD. 
BRITISH COLUMBIA, 

CANADA, MS IEJ 

Deoi Dc»/ 

So ... I was wondering if there's a Santa Claus out 
there somewlere, who'd niaybe be interested in loaning 
■e (or better still, donating) a Macintosh, with 
artwork or desk-top publishing capabilities. That 
would make it easier for me to create neat In-line 
diagrams instead of hand-drawn ones, do wrap-around 
text, etc/ and also ease your editing burdens. Then I 
could plough ahead and ample te the whole series with 
graphics built-in, and make it available via south 
East Media as a tutorial disk, or disks. We could 
also go ahead and maybe get it our as a book, in 
advance of the series itself getting ccmpletedl 
In the meantime, for the benefit of all readers. 



50 



March '68 



66 Micro .Journal 



here's a summary of significant typos up to Mile 3, 
excluding obvious misspelling ones, which are not 
important anyway. Perhaps you could print tfais list 
as a Bupplgnsit to one of my articles. 

Bile 00 

Diagram 1 Vertical dotted line should join the move- 
able parts of the relay-con tacts. 
Page 41 depression at top should read Zl = yl + y2 
TEST ONE Problem 2(ii) Coll should be labelled XI 

mic oi 

Page 23 Series Circuit should read O.a = 
Page 26 Line 6 should read ta' (b 1 + c')d'J.e 

7 should read ta'Cb' + c')d*J 
Ulc 02 
Solutions 2(a) should beY-ab + bc + abc not Yl 

there are two 3(e). Final one = 3<f> 
below Diagram 6(d) should read -0 — not -1 — 
page 45 para 3 should read One such is that as the ... 

next para "block of four "be" not "be" 
Mile 03 

Solutions (viii) should be a*bc' + be'd + a*d + b»c 
(don't know how I came to leave off all those primes!) 

Sorry about all those errors. I guess if I didn't 
know the stuff in advance and therefore studied every 
dot and corona, these things would be less likely to 
get by roe ( but when I've spent hours oonpasing each 
"Mile" my eyes are probably "screen- tired*. Anyway, 
that's my excuse! I'll be in touch soon ... maybe 
with an additional chapter for "XBAS1C XPLAINTO". I 
have one in mind I 

In the meantime, best wishes for a merry Xma& to all 
at 6BHJ, and continued success for 1966. 



Don Williams i 

66 Micro Journal- 

5900 Cassandra Smith Road, 

Hixson, TN 37343 



Sincerely, 



R. Jones 
President 



CERTIFIED SOFTWARE CORPORATION 

616 Camino Caballo. Nipomo. CA 93444 USA 

TEL805-929-1395 TLX: 467013 

FOR IMMEDIATE RELEASE 

Certified Software ennoiaioes the introAxiion of it's OmegaSoft 
68000 Industrie* Pascal package specifically designed for the Atan ST 
computer with at least 1MB of memory. This version is customized for 
die Atari and include* a command line interpreter lor greater flexibility 
and ease of use compared to other programs for the Atari that are 
hindered by the 'desk top*. 

Ad Qamdos. Bios. Xbfos. Line-A graphics, and AESfvDI calls are 
available as proced* ae and functions. In addition, the Pascal Shell has 
bean modified so dial die mouse car be used for menu selection. At 
least a double sided floppy drive is required, a hard disk is 
recommended but is not required for moderate a' ied programs. 

The base package (PCSK-B) is priced at $290 and includes the 
compiler, relocatable macro assembler, linking loader, host debugger, 
pascal shell, acraen editor, command line interpreter (with source 
code), and Hie patch utility. Options available are : 

PCSK-R : source code for the runtime library, two 

PCSK-S: source code for die debugger, editor, pascal shell, and 

patch utility. S275 

PCSK-T: target debugger with source code. $225 

In West Germany, contact Byte Studio Borken (TEL: 02861-2M7), 
aft others contact Certified Software. 



Mr. Don Williams 

Editor 

68 Micro Journal 

5900 Cassandra Smllh Road 

Hixson. TN 37343 

Dear Mr. Williams. 

As of last year, I am still waiting to see full 
coverage for 68000 based systems. Last year I 
said that 11 would be my last unless you 
expanded to include more systems like Amiga 
and Atari. Well, you did make a plea for Atari 
help so I will slick it out for one more year. I 
own an Amiga so I expect progress on that 
system this year. Your management staff is 
not in step enough with the product world or 
users, otherwise they would have advertised 
for Atari much sooner. I expect to see the 
request for Amiga support soon. 1 have been a 
subscriber since 1976 and would not throw 
away a single issue. I have always enjoyed 
your publication until the last two years. I 
still have two old 6800 and one 6809 system, 
so the old issues are important to me. Please 
make the new Issues important to my Amiga. 



Respectfully. 
Robert Hill 

Editor's Note: Thanks Robert for letting us 
know how you Jell. That is especially 
important to us. We have wanted to support 
the Atari and Amiga for sometime. However, 
as you probably know, there wasn't very 
much. (J any, serious software for them. Today 
things are looking up. For instance, we are 
pretty excited about OS-9 running on the 
Atari and even belter, you choice oj Personal 
or Projessional versions. I call that serious 
sojlware! 

Now-here is the grabber. Without adequate 
input, articles, hints & kinks, tutorial and 
hands on material, and a lot more, it won't Jlyl 
We need your input and the input ojjolks like 
yourself who are interested in tlxese systems, 
ifii is to work. We need volunteers willing to 
share their knowledge and experiences with 
all of us! Tlvats live way we have all been doing 
tljor 10 years now. 

Also you might note that our "Atari Call", 
elsewhere, has been changed to "Atari & 
Amiga". 

DMW 



66 Micro Journal 



March SB 



51 



Am** lLl«*m» 
Tiki llftUOUU 



en Maory protection provides both a iMuti environment Cot 
development iyi(M work and a significant aid In program debugging. 
Ttie £ft) module provldea progra* run time? protection, protection 
against wild pointers and detection problems balora CPU ccnh, 



POfl MORE IMPOMATIC* COSfTACT : 

Hr. Andy Ball 

Vlc» Premidmnl, Marketing 

Ml Cf Dei ft SyltHU COfpaf*T ion 

i*0O nr u*th Street 

Das stolnea. low* 50323 

tl&-H4-i929 



KB TO OS-*/*""* OWUTliC 8TR61 

Dai Moines, Iowa. Klcrovara lyitiM Corporation annauncaa the 
availability of an itherrtat Support pacisge Cor tha OS-I/6B000 
Operating Syetea. Th* o*w Ethernet P«ctig# utlllaea tha popular 
TCP/IP protocol to facilitate i wi ill i n In i between OS-S/sOvOv-bssed 
systems •■ wall ■■ other operating systee environments . 

Tha Initial ralaaaa of Nlcroware'e it barret protocol pacha? a la 
designed to support tha Crrau float low Machinery Corporation (CMC) EHP- 
10 Ethernet controller. ubeequent ralaaaaa to support additional 
hardware, Including tha Motorola Mvne 330-A-it controller, are u der 
development. 



Mlcrovers's TCP/IP Implementation conform* to tha Onlted Stetss 
Department of Defense ArpeUet etandard*. Thle etandard incorporates 
fTP {a popular (Hi tra:naCar protocol) and Telnet <a vtttual tinlul 
Interface) - fT9 ellowa the uaer to transfer (Ilea and data between 
Ethernet nodes, alnat allowa tha uier to login on ritwti ayeteae 
over the Itheroat-TCP/IP network. 

HLcrowara selected the Ethernet protocol becaaue of ita rapid growth 
In popularity es a networking etandard. ha Mlcrovsrs Ethernet 
package allowa the uaar to gateway froa tha OQ-t Operating Syataa to 
own. VMS and other operating system envlronacate- This 
ccaaur Icet lone path provides connectivity Cor dlotrlbutad program 
development and application ayateeje. 



The STO software coos s coajplata with a new peralaelon awry map 
utlllty--MAP8. Thli utility graphically displays tha anoty addraae 
■pac-v using tha OS-* Teracap Wtlllty. MASS dlepleye information 
about procaaa reglatera and rha inn of MAM that each process can 



The ape aodule la Immediately available under OX* llcanaa (roa 
Nlcioware and authorized Nlcroware dletrlbwtora. Pricing le quantity 
dependent j contact Nlcroware (or "»re Information. 

The OS-fl Operating Syetea le a resl-tim , aaltl-uaer sird sulti-teailne 
ayatea (or compateia baaed on the Motorola featly of 66>xi procaaaora. 
Od-fl le compact. ROMeble and prouldaa a OMll-etyla environment (or 
application aoftvare. line* Ite introduction In 1*81, C4Kv/6BO0Q hae 
bean llcanaad to over 3)0 masuf scturere world-wide (or uaa In a 
variety o( industrial scientific And consumer product!. 

Pounded In 19??j Mlcrowara 8yet«a» Corporation epaclsllsss In the 
development of advanced operating ayataaa and prog-remaino. laoguagaa. 
Laat year tony and Phi UP* announced th« 06-P Operating Syetea ae the 
basis (or Compact Dlea-lnterectl v* (OKI) M*>w Media technology. 



Owe Holnaa, Iowa. Mlcrowara System* Corporation aneouncaa the ralaiaa 
of a new c aoorca-lovel debugger for th« 0C-v/sOOQO Operating System. 
TMe new debugger repraaente a high-level language tool Intended to 
decreeae software development tie* and simplify programming. Tha C 
debugger contalna (eeturea comma ly (ouaO In C source-level debuggere, 
ae vail a* e number of unique and innovative eaten* Ions dealgnwd (or 
the 06 -t prograaailng environment , 



The Nlcrowete Ethernat eupport package IneJudae a now OS-t (lie 
■aruger that eupport « a BSD 4.2 typa socket Interface and a new CMC 
Cfp-10 device driver. Alio included la complete dorwaajotat ion and **- 
daya (ree aoftvare eupport. Contact Mlcrowara. or an autborleed 
distributor (or pricing InCoraatloa. 



i OS-0/4B0M CM&AT1MC 919 



Daa Molnaa, love. Mlarovara Syateaa Corporation annouoce* the releaee 
of a anoiy protection aodula— Byataat protection Dnlt (0*0) — (or tha 
Ol-t/«0C00 Operating Syeten. SPO prowldoe aoftwara newioty protection 
(or a Maaory Manageaant Dnlt and other cuatoa devices. 

Tbe SPO aodule uaea a eyat**~wlde pemlaelon ■acbanlaa to Halt MAM 
ipctti (or uaer atata teeke. Eardwara devlcee supported by 
Hlcrowaio'a 9PU aodule Include the MCd9«41, MCaBO^l and cuatoa 
dewlcaa. To* SPQ software le delivered ae a Modular addition to OS-v 
In aourco code (ora end la divided by functions Into aaparata routine* 
that can be aodlded to support dl((otant aaaory protection davlcaa. 

Ml c rover* hae designed SVQ toftvitt to be tranaparant to tha user. 
Only In caaaa of Illegal aaaory access attevpts — when bue arrora 
occur — will the uaar bacoae aware that SPO software le r eel dent . 



A powerful debugging tool In tha C source-level debugger lp a (ull- 
(eaturad C exptaaelon interpreter. The prOgr*aaer lp able to call a 
(unction with parameters in tha proura* being debugged. The raault 
can then be printed, a bcnal point aat and tha prograaaar can then 
atep through the (unction. This sllowa the teetloo of functions 
aeperetely In the prOgr**, 
The eiptaaelon interpreter also supports tha raw Mlcrowars C COapllar 
data typae and operations (enusarstors > bit fields, etructura 
aaelgnaant, (unctions that return structures and structure 
patABvters). Title prowldee (or totel coapa tlbllity between tha aourco 
lowal debugger and the C Coapller. 

Another unique feature of the debugger Is sub-line e*prseslon 
stepping. Yr* debugger prints e character pointing to tha expreeeioe 
In the aourco line that la to b* esecuted' neat. If there la sore tbas 
one atataoent In a line, then the debugger will atap across tha Una 
to the next etsieeent, Thle allowa tha progreaaar to vetch each 
expression se it le executed In a caaplsa C etateeent. 

Mlcrowara baa daalgned the debugger (or optiaua operator use. each 
eoaau nd contains both e short sod long (ora, and multiple ecaaunds can 
be aaparated by a "j" on tha eaae Una. Thie rallavaa the prograaaar 
froa tha redundancy o( keying lo each ccaaund t las after tlaa. In 
addition* frequently used commands cart be repeated simply by using the 
carriag* return hay. 



Continued on page 56 



52 



March "88 



68 Micro Journal 



STYLOGRAPH 

WORD PROCESSING SYSTEM 



OS-9 LEVEL II VERSION 



A Review 

By: Bert Schneider 

lfyou are not using 
Stylograph for your 
word processing and 
text editing, then you 
might as well pack up 
your computer. Its 
operating system, 
and all of those neat 
utilities you have col- 
lected over the years 
and go back to play- 
ing games. Those are 
some serious words, 
but I mean business 
when It comes to the 
Stylograph Word 
Processing System. 

In this review. I 
hope to give those of 
you out there not 
blessed with the op- 
portunity of using 
any of Stylo 
Software's fantastic 
array of professional 
software, an overview 
of Stylograph. Mall 
Merge, and their 
Spelling Checker pro- 
grams. I must point 
out that this package 
Is for the Radio Shack 
Color Computer 3 
and runs under 
Mlcroware's OS-9 
Level Two operating 
system. Its foim. fit, 
and function Is Iden- 
tical to the familiar 
Level One version for 
the Color Computer 1 
and 2 as well as the 



standard OS-9 Stylo- 
graph. The major dif- 
ference Is you now 
can handle more text, 
the processor Is twice 
as fast as the old 
Color Computer, you 
have 80 columns 
built Into the system, 
and remote terminals 
are supported. 

Having been very 
familiar with Level 
One Stylo running on 
my Color Computer 1 
(using Wordpak from 
PBJ. INC.) I was anx- 
ious to have at least 
the same capability 
on my new Color 
Computer 3. 1 

started working on 
my new system this 
past summer. You 
see my old system 
consisted of a 10 meg 
hard drive, one 40 
track floppy, and all 
of the PBJ hardware 
that enabled me to do 
considerably more 
thanjust play games. 
This being America, 
and the term "new" 
being associated with 
better (so we are told 
from Madison Ave) I 
purchased a "new" 
Color Computer 3. an 
RGB monitor, and 
sold all of my old stuff. 
I am still in the proc- 



ess of building the 
expansion hardware 
to include two hard- 
ware serial ports, a 
parallel port, a real 
timeclock. anda hard 
drive Interface. The 
machine now resides 
In a PC case and Is 
much more appealing 
than my old walnut 
case that was more 
comparable In size to 
the EN1AC! 

Anyway. I tried to 
get some of the 
patches t o allow m e to 
use the old Stylo on 
my new found Level 
Two system. Fat 
chance! Although 1 
heard of people doing 
it. I did not have any 
luck. Oh It did work, 
but the screen display 
was veiy Interesting, 
to say the least. Alter 
I had used every pro- 
fane word in the dic- 
tionary I called Roger 
at Stylo Software and 
found out about the 
new version. 



OVERVIEW 

Stylograph pro- 
vides you with one of 
the most powerful 
word processing sys- 
tems I have seen for a 



home computer sys- 
tem and outdoes sev- 
eral higher priced 
competitors. First 
and foremost. STYLO 
is a "What you see is 
what you get" full 
screen text editor. 
After every keystroke 
the screen is updated 
to reflect exactly the 
way the document 
will look like when it 
is printed. This 
means you do not 
have to use a text for- 
matter after you have 
finished editing your 
work. 

The screens are 
not user hostile. Ed- 
iting is cursor based. 
A status line Is pro- 
vided to keep you in- 
formed of column, 
line, page, and mode 
Information. Help 
screens are available 
at any time. And 
most commands 
other than format 
commands are en- 
tered from menu 
driven screens. For- 
matting Is done with 
comma commands 
and control codes. 
The instant you enter 
a format command, 
the text display is 
updated to reflect the 
change. For example. 



68 Micro Journal 



March '86 



53 



l/you want to center a 
line. Just enter the 
following 



.ce 

THIS IS CENTERING 

and Immediately the 
text Is centered. 



But editing Is only 
one portion ofSTYLO . 
Since Slylograph Is a 
word processing 'sys- 
tem", you have more 
at your disposal than 
Just text editing. 
From the main super- 
visory menu you may 
do any of the follow- 
ing: edit text, print 
outyourtext. save the 
text and return toOS- 
9, save your text to a 
predefined mark, re- 
turn to OS-9. load a 
text file, erase current 
memoiy buffer, pass 
a command to OS-9. 
spool a file to disk for 
later printing, load a 
proportional spacing 
table for daisy wheel 
printers, or load in or 
edit a text file larger 
than the buffer. The 
spool function allows 
you to print a file in 
the background. Al- 
though I only recom- 
mend this if you use a 
ram disk or hard 
drive since it Is very 
disk I/O intensive. 



MAIL MERGE 

Mall merge is use- 
ful for two reasons. 
The first and obvious 
reason for Mall Merge 
is to print out the 
same letter or form to 
many different desti- 
nations with dlirerent 
names and ad- 
dresses. The other 
reason for using Mail 
Merge Is to print out 
very large text Hies, 
larger than the buffer 
can handle at one 
time. You can even 
use Mail Merge in the 
background. 



SPELLING 
CHECKER 

The Stylo Spelling 
Checker compli- 
ments Stylograph 
and Mail Merge very 
well. If you have ever 
used a Spelling 
Checker this one is 
very straight forward. 
There are no fancy 
commands to re- 
member. Just type 
the following and 
away you go: 

OS9: spell /dl /letter 

After that the pro- 
gram takes over and 
compares your text 
file -letter" to 42.000 
words and Is totally 
self-prompting. 

The main diction- 
ary can be manipu- 
lated to add or sub- 
tract words, and you 
can even develop your 
own personal supple- 
mental dictionary for 
pronouns and spe- 
cific terminology to lit 
your needs. 



SPEI.L then dis- 
plays to the standard 
output a word count, 
the number of differ- 
ent words used, and 
the number of mis- 
spelled words. All 
misspelled words are 
listed out for conven- 
ient reference. 

You are next lead 
through a series of 
questions as to what 
you want done with 
the misspelled words. 
You may either tgnore 
them, add them to the 
dictionary, flag them 
so you can search it 
out later, display the 
word In use to help 
you determine 

whether or not is was 
a misspelled word, 
change the word, or 
exit. 

There are some 
optional utility com- 
mands that allow you 
to compress and de- 
compress the diction- 
ary and to add and 
subtract words from 
It. 

An important note 
for all of these pro- 
grams is that the util- 
ity STYFTX is used to 
configure each one of 
these programs onto 
your system disk. 

STYLO for I^vel 
Two supports a re- 
mote terminal tied to 
a serial port and sup- 
ports windows as 
well. This is a big 
departure from the 
I^vel One Color Com- 
puter System. First, 
the I^evel One system 
did not support a ter- 
minal. And naturally 
did not support win- 



dows. This new ver- 
sion does! I could not 
see using a terminal 
without the capabil- 
ity to edit text from a 
terminal. You could 
use build or edit, but 
somehow I could not 
see myself writing 
this review using edit 
or build! Second. 
I^evel One did not 
come with windows. 
This very Important 
feature of the operat- 
ing system is sup- 
ported to give you a 
powerful software 
tool. Try this on some 
other machines. 
Compile a program in 
one window. Print 
out the error codes 
and lines in another 
window and then cor- 
rect your errors in 
still another window 
while someone else rs 
writing a novel on 
another terminal! 
Macintosh, eat your 
heart out! 

Some of the termi- 
nal drivers included 
(a total of 34 are pro- 
vided) are the ADM- 
3A. Heath/Zenith 
HI 9. Glmlx OS9/ 
window. Hazeltlne 
1500. DEC Vr-52. 
H.P. 2621. Beehive 
8100. and many 
more. You could 
modify any of the 
drivers, or add your 
own using STYFIX, 
the configuration 
program. 

One neat feature 
built into this new 
program is a Math 
Package. That's 
right! Now you can 
add up your salary 
requirements while 
you edit your resume 



March '88 



68 Micro Journal 



all on the same ma- 
chine. Just by typing 
"C" in the escape 
mode you have at 
your beck and call a 
calculator with addi- 
tion, subtraction, 
multiplication, and 
division capabilities. 
You may also operate 
on rows or columns of 
numbers. An ex- 
ample might look 
something like this: 

452 
135 
239 

111 



937 



Just by entering 
control-Z and then 
pressing "C" it pro- 
duces the total "937". 
You can only add or 
subtract In column 
mode however. After 
you have performed 
the operation you 
may go back and in- 
sert symbols or other 
text such as the fol- 
lowing: 

452 
135 
339 
+ 11 

937 



WHAT YOU GET 

Stylo comes with 
one floppy disk for 
each program [word 
processor. mail 
merge, and spelling 
checker each of 
which are sold sepa- 
rately or together) 
and a manual chock 
full of information. 

Each disk comes 
with hard copy of the 
Read. me file located 
on each disk. The 
Read. me file de- 
scribes the disk con- 
tents and how to get 
started along with 
some helpful notes. 
On each disk Is the 
readme lile. an Instal- 
lation program [to 
make it easier to In- 
stall), a history file 
explaining correc- 
tions and modifica- 
tions, a STY directory 
containing configura- 
tion files, help files, 
and a couple of 
sample letters. The 
CMOS directory obvi- 
ously contains the 
program and STYFIX 
- the configuration 
program. 

The manual In- 
cludes an Introduc- 
tion and overview, a 
hands-on tutorial. 



specific mode and 
command explana- 
tions, and the OS-9 
configuration. Sev- 
eral appendices are 
attached to help pro- 
vide information on 
control and format 
commands, terminal 
and printer configu- 
rations, character 
modification codes, 
and Information for 
changing text con- 
slants. A glossary Is 
also Included to help 
you understand 
wordprocesslng and 
computer lingo. 

Now since 1 have 
used Stylo before. I 
needed little Intro- 
duction and Instruc- 
tion on the use of this 
program. I did how- 
ever go through the 
entire manual along 
with Its lessons. The 
manual is laid out 
very well and Is 
straight forward, ll 
provides the reader 
with Just the right 
information at the 
right time but does 
give you more than 
enough Information 
required to configure 
a terminal/ printer, 
understand control 
codes and error mes- 
sages, in a concise 
format in the appen- 
dices. 



CLOSING 
REMARKS 

On closing. I only 
want to say that I 
don't have any nega- 
tive comments about 
STYLO SOFTWARE'S 
products. Their soft- 
ware is top notch, 
their documentation 
is the finest, and their 
support can't be beat. 
I can say this. I can 
type well between 60 
and 70 words a min- 
ute with few errors 
(touch typing) and 
Stylo keeps up with 
me without failure. 
There Is only one 
product that 1 would 
recommend more 
than Stylograph and 
that is OS-9 itself!! 

So If you are a 
Color Computer 3 
owner and either 
have OS-9 or are 
thinking about gel- 
ling it. purchase Sty- 
lograph. You will 
save so much time 
and effort, you won't 
settle for anything 
less. 

Stylograph. Mall 
Merge, and Spelling 
Checker are available 
from: 

Available from : 

Southeast Media 
5900 Cassandra 
Smith Rd. 
Hixson. TN 37343 
1-615-842-4600 



FOR THOSE WH 




68 MICRO 
JOURNAL™' 



68 Micro Journal 



Mart* 88 



55 



Continued from page 52 



Th« fttow option* — In «ddltlflo to tit* •or» tuMiaaiitil Euturta autro 
O oe-llna balp* trtclOQ, biciL points. w»tc*i •«pr»»«loo» and varrlabL* 
dlaplay/cA*»9* (acil lti»a- -*** • tbla nwv Ucrwm C Muro^livil 
dabunvr • pCMartul programing tool. TV* 4*bu?9a r Dot only ■ p*a4a 
proflraa davaiooaaant , but a»*h*a C laoguaa* prOOrMln? a tool that oaa 
b» utlliaa* by nrcphrti prooraMMra. 

Tb« O*-* Oparatlno srataa la a taal-tlaw, vultl-uaar and suit L-taafclno. 
•yata* (or ctaapotata baatrt on tha Motorola (uUr of tat tit procaaaora. 
Q*-» la cwfuet. HOHabla and provldea a tmik*-atyla anvlronownt (or 
application aoEtvar*. Sloe* ita Introduction in 1qb3, 001-9/66000 Kaa 
b**n Uc«ftM« to owar ISO unuC acturara votld-«14a Cor ua* la a 
▼arlaty of ln*iuat«*al • aelantlflo aod oonauaar product ■. 



ATARI & AMIGA 



CALL 



As most of you know, we are very sensitive to your 
wishes, as concerns ihe contents of these pages. One of 
the things that many of you have repeatedly written or 
called about is coverage for the Atari & Amiga™ series of 
68000 computers. 

Actually we haven't been too keen on those systems 
due to a lack of serious software. They were mainiy 
expensive "game-toy" systems. However, recently we are 
seeing more and more honest-to -goodness serious soft- 
ware for the Atari & Amiga machines. That makes a differ- 
ence. I feel that we are ready to start some serious looking 
into a section for the Atari & Amiga computers. Especially 
sosinceOS-9 is now running on the Atari (review copy on 
the way forevaluation and report to you) and rumored for 
the Amiga. Many of you are doing all kinds of interesting 
things on these systems. By sharing we all benefit. 

This I must stress - Input from you on the Atari 
& Amiga. As most of you are aware, we are a 
"contributor supported" magazine. That means 
that YOU have to do your part, which is the way It 
has been for over 10 years. We need articles, tech- 
nical, reviews of hardware and software, pro- 
gramming (all languages) and the many other fac- 
ets of support that we have pursued for these many 
years. Also I will need several to volunteer to do 
regular columns on the Atari & Amiga systems. 
Without constant Input we can't make it fly! So, if 
you do your part, we certainly will do ours. How 
about it, drop me a line or give me a phone call and 
I will get additional information right back to you. 
Weneed your input andsupportlfthisisto succeed! 

DMW 



OMEGASOFT 

6809 PASCAL CLOSE-OUT SALE 

50% OFF ALL 6809 HOST PRODUCTS 

In March and April you can purchase OmegaSolt Pascal 
6809 host products at 50% off our regular price, direct 
from Certified Software Corp., or through participating 
dealers. The following products are available : 

PCS2 + RALL1 : Includes compiler, assembler, linker, 

debugger with source code, and runtime library with 

source code. $275 

SEK1 : Screen Editor Kit. Configurable for various 

terminals. $45 

APU1 : Allows use of AMD9511 chip for integer, 

longinteger, and real arithmetic. $45 

MTK1 : Multi-tasking kernel. Allows task procedures 

without an operating system in your target system. $85 

Available for OS- 9 (Microware), FLEX (TSC). MDOS and 

XDOS (Motorola) on S' or 8" SSSD format 

Shipping charges extra Master-Card and Visa accepted. 

These products to be discontinued after April. 

OmegaSoft is a registered trademark of Certified Software 

Corporation. 



CERTIFIED 

SOFTWARE 

CORPORATION 



S18 CAMtNO CABALLO, NPOMO. CA 83444 
TEL: (BOS] 929-1395 TELEX: 487013 
FAX: (80S) 9M-13U5 (MID-SAM) 



^laSSlfitfidS ** Submitted - No Guarantees j 



MUSTANG-020 16Mhz with 68881. OS9 Professional Package 
& C $3000. Call Tom (615)8424600. 

AT&T 7300 UNIX PC. UNLX V OS. 1MB Memory. 20 MB Hard 
Disk. 5" Drive. Internal Modem. Mouse. Best Offer Gets II 

S+ System with Cabinet, 20 Meg Hard Disk & 8" Disk Drive with 
DMAF3 Contra Her Board. 1X12 Terminal $4800. 

DAISY WHEEL PRINTERS 

Qume Spiim 9 - $900 
Qume Sprint S - S800. 

HARD DISK 10 Megabyte Drive - Seagate Model «41 2 $275. 

3 -Dual 8" drive enclosure with power supply. New in box. $125 

each. 

5 - Siemens 8" Disk Drive . $100 each. 

Tano Outpost II, 56K. 2 5" DSDD Drives. FLEX, MUMPS, 

$495. 

SVVTPC SAW with Motorola 128K RAM. 1-MPS2. 1-Paralell 
Port. MP-09CPU Card - $900 complete. 

Tom (61$) 842-4600 M-F 9AM to SPM EST 

••• 

GMX MICRO - 20 (16.67 MHZ) with MC68881 and OS9/68020 
professional pale $3500 or best offer. 
John Bing 9-5 EST (301)428-8214 



56 



March '68 



68 Micro Journal 



SCULPTOR 



CUTS PROGRAMMING TIME UP TO 80% 



6809/68000-68030 

Save 70% 



Due to a "Special One Time" Purchase, We 

Are Making This Savings Offer. Quantities 

Limited! 

See S. E. Media Catalog- page 29 

Once this supply is gone -the price goes 

back up! 

System OS-9: 6809/68000-68030 
• Regular $995;fle 




$295.00 



nVTJ \ gf% g^ f\ mm £~* £~± + S7.S0S«HUSA 

v-Fl^ i-i 1 §4L^ " M V\ ■ I— ■ ■■ is Overseas- see S.E. Mote 

Shipping Rates- page 29 



AVE - WHILE SUPPLIES LAST! 



68 Hero Journal March '88 57 



SK* DOS 

P>r Gm»ne DOS " for 69000 «pp Iron torn in 

* Industrie! Control 

* Huiinm Um 

* Eo\tc*1 tor^t Computing 

* Sewnti'*. Compunng 

* Number Crunching 

* Oadwslad SV«ami 

* Turnkey Sylltmi 

* D»ltCall«cllon 

+ Sinol«-bawd Compuixi 

* Buftonwttad Compulen 

* Gf'PAin Workitchofis 

* Ocw-ol* kind Svit«nu 
+ Advimwd Hobby nt Uw 

SK*0OS if • »>r*gl*uur di.k oprmng lynrn for wnipuunutang Motor o I* 32 bit CPU. 
uch *i the GdOOB. G80UO. 63010, nm 6602a ti p'ovkJot the w*tt of • lull 00S. vet it 
iimpie end »*iv io use. end will run on lyiitnn. from 32K to 16 m»g»*vin 8ec*utv 
SK*DOS is ees'ly implifTMnled on • nv* svttirn. «v« t*ll it "The Gtn*f«c DOS which 
•Mows DfOflr»mi vyntten lor onm iv item lobe lunon m«ny o theft, 

SKtDOS romn wmti over 40 eornmertds end tyitim programi, >nclixJiiig • 6809 vnuljlw 
which ■JtovnSSK SK*OOS to run appliutionproarems end lingusors developed for 6808 
SK»0OS end oihtx iv-ttmi Anembiera. editors, end hiaher ii V «i isngueo* tuPftOM ere 
e*eiiibie from thi/d p**"'V sohwsre vendois *i*d through public domein •oliwece- 

SK«OOS IS aval labia lot unjji* copy v d—hr sale*. « well at OEM Utmnv rtg S.r^n COO'bs 
can $125 linQUiri w lo eveiJafalesystemsl Exlrsmtly attractive OEM ltc#nufig larmj art 
alio aviiiebft An op.loni< Configuration Kit contaris a detailed Conligu ration Manuel 
end two disks of *o*irte eoda for tyiiam adaptation, including; tourer code for • lyilarn 
montlor/dtthig ROM and olhar progrerns usslul .w edepinig SK*00S to new ivttami. 

SK'DOS 




>i *v*l*btt from 



Star-K 



SOFTWARE SYSTEMS CORPORATION 

P.O. BOX 10» MT « ISCO. NY !05»« 9T4/741 0!B7 
TELEX 5tO«OS677« 



INDUSTRIAL PASCAL FOR 68000 AND 6809 

PCSK is a package lhal generales code lor a 68000 series processor 
running on a 68000 development system ll Includes Ihe compiler, 
assembler, linker, fiosl debugger, large! debugger, and screen editor, 
all integraled logelher and controlled by a menu driven shell program 
Source code Is included lor Ihe runtime library and many of itte 
utilities Host operating systems supporled are OS-9/68000 
(Uicroware). PD0S (Eyrlng Research), and VERSAdos (Molorola) 

PXK9 is a package lhal generales code loi a 6809 processor running 
on a 68000 developmenl syslem includes all ol the features ot Ihe 
PCSK package above, excepl tor the host debugger Hosl operating 
syslem is OS-9/6B0O0 

I WANT IT. WHERE DO I GET IT? 

For more intormalion on either ol Ihese Iwo products please contact 
Certllied Sottware. South East Media or one ol our European 
Licensees 



oem Licensees 

Gespac sa. 3. chemin des 
Aulx. CH 1228 Geneva/ Plan- 
les Ouates. Swllz TEL (022) 
713400, TLX 429989 

PEPEIeklronlk Systeme 
GmbH. Am Kklslerwald 4. 
D 8950 Kaulbeuren. West 
Germany TEL (08341) 8974, 
TLX 541233 

Ellec Eleklronik GmbH, 
GalileoGalllel-Slrasse. 6500 
Mainz 42. Postlach 65. West 
Germany TEL (06131) 
50031. TLX 4187273 



DISTRIBUTORS 
R C S Microsystems Lid 
141 Uxbndge Road. Hampton 
Hill. Middlesex. England TEL 
01 9792204. TLX 8951470 

Or Rudolt Kell GmbH. Por- 
physlrasse 15. 0-6905 
Schhesheim. Wesl Germany 
TEL 062 03/6741, TLX 
465025. 

Elsolt AG. Zelgweg 12, 
CH-5405 Baden-Daetlwll. 
Switzerland TEL 
056-833377. TLX 828275 
Byte Studio Sorken, Buten- 
wall 14. 0-4280 Borken, 
Wesl Germany TEL 
02861-2147. TLX 813343 



CERTIFIED 616 CAMIN0 CABALL0, NIPOMO CA 93444 

SOFTWARE TEL: (8051 929-1395 TELEX 467013 

CORPORATION FAX: <805> 929-1395 (MI0-8AM) 



SOFTWARE FOR 680x AND MSDOS 



SUPER SLEUTH DISASSEMBLERS 

EACH J99-FLEX J101-OS9 1100-UNIFLEX 

OBJECr-ONLV varalona: EACH 1M- FLEX. OS». COCO 

tmaraeuvafy oanaraw touroa on dak wXh looota. ttoJtOt Mat binary M*l«og 

BOaclnr eBOO.l.J.S.S.B VtSQl varaleo Of ZB0/BOBO.5 vanlon 

OSS walon also proooiaa* FLEX kvmal obratt ftta unflur OSB 

COCO DOS avaUlMa 10 M0O.I.?.3.r3.B.»>eSO? iHUI Inst 2BO/B0B0.SI out, 

tautO oliatiomblor »IOO-FLEX.OSB.UHIFLE/X,USOO«,UNIX,5KDOS 

CROSS-ASSEMBLERS WITH MACRO CAPABILITIES 

EACH JJO-FLEX.OSCUNIFLEX.MSOOS.UNIX.SKOOS 3/S100 ALL/J200 
apacrly i»0<B50».eB01'i I. BS0J.««0S. «•(>». ZB.ZBO.BO4B. 805 I, BOBS. «80 10.32000 
modular cro*» aaaamiuara *» C. wttft bad/Una: 
•oixtai «M amUkWU ISO BIO, HOT kx 3, 



txo lor HI 



DEBUGGING SIMULATORS FOR POPULAR 8-BIT MICROPROCESSORS 
EACH 17S-FLEX S100-OS9 SBO.UNIFLEX 
OBJECT-ONLV roriloni: E«CH ISO COCO FLEX, COCO OS9 
loloftcllvoly slrrmlU* proactaort. oroaaaj (*ia"*r*b>r hxmanlog. Wnliy adlltog 
■ oealy br BBIKVI. (UIBSM, «J02. MM OS». ZW FlEX 

ASSEMBLER COOE TRANSLATORS FOR 8S02, 8800/1, 8809 

KCJBUM J75-FLEX M5-OSB MOUHIFLEX 

6800/1 19 MO> • eX» to poaiaon Int. ISO-FLEX I7S-OSB ISO-UNIFLEX 

FULL-SCREEN XBASIC PROGRAMS antri «tira«r tonlr«l 
AVAILABLE FOR FLEX. UNIFI.EX, ANO MSOOS 
DISPIAV GENERXTOHIOOCUUENTOn *M wraourca. Hi without 

UAJLWO LIST SYSIEU urM woaurc*. IM allltoul 

INVEKCTORY WITH MRP |l» irfiouro. ISO wllhpul 

T*SLAAnAS*£I>Rt>0SHE£7 I10O aiAjoutc*. IN wHIraut 

DISK AND XBASIC UTILITY PROGRAM LIBRARY 

J50.FLEX OO-UNIFLEX/MSOOS 

Mil disk aactorl, aon dVaoory. maintain miliar catitog, do dlk aorta. 
roMouanoa aoma or 11 ol 6ASIC orootam, N raf qasjC proQram. ale. 
not FLEX virakma roU aort and inxnu— >"( only 

CUOOEM TELECOMMUNICATIONS PROGRAM 

>IOO-FLEX,OS>,UNIFLEX,MS-OOS,UNIX,SKDOS 

OBJECT. onit Hnlon: EACH IH 

manuOkaA »» krrmavai noda. Ma kantrar. MOOEU7. XON XOFF. Mo. 

lor COCO and oonCOCO . drt-ai kntamaj COCO mooafri port up Io 2400 BatXJ 



DISKETTES & SERVICES 

5.2S" DISKETTES 

EACH 10-PACK *7 50 SSSO SSDO OSOO 

Antarkin motM, cuWankMKt 100* guMtr. >nK tyvak nVkall. tlub rkkjs, , 



AOOITIONAL SERVICES FOR THE COMPUTING COMMUNITY 
CUSTOMIZEO PROGRAMMING 

w* wsl rjuatomlta toy of ir* proooma daacrlOad » uVa acVotoamani or m our 
biocnura lor soadalizad eAauomar uai or lo covar now prtxsnaora: tfwj chtroa 
lor »ucn outaaruzataFi oepand* upon tra (rtaAataoally ol Iha norallcalrora 

CONTRACT PROGRAMMING 

wa wn craata na» programa or modr/y auakng programa on a contract baatt. 
a caryica wa h«v* providad tar ovar rwamy yaara: tho oompvnira on wnNdt wa 
havo panormad contracf proanmrrano avaida moat popular modeta ol 
matntrvmoa, <ncajaVai IBM. Bunougha, LWrao, HbrwyaraB. moat POOvlar 
modavj ol mJnkwnput all. Including DEC, IBM. OO. MP. ATaT. and moil 
popular OnnrJa 01 mjcrooamaarw a. K*a*io BMXV1. »B0I. ZOO. ««», 
BoojO, u»"0 moal ajpunxxtau longuagal and opo'atatg iraurntl. on tytltmi 
ranging at ana from laro* toajuaiarw^craurrt to Woia ooarfl cornTokari; 
tha challa lor conjnjci progvmmmlng la wauaPy by tab nout or by iha lack 

CONSULTING 

wo offor a wtda rmnga ot bubnoaa and laofcnjoal oonlunjng aarvcos. Incaxong 
a^mrrtara. arMoa, fajtaAg. and dmugn. on any topic talatad ka computoni; 
Iha charga kx cororiVno i% nopnaBy baaorj upon fjrno, Itaval. and e*tmn%n 



Compulor Syilgmi Cpntultanta, Inc. 

14M L.tl* L*n», Conyon. GA 30207 

T»!»phone 404-483-4570 or 1717 

Wo laxa ordora ai any time, but plan 
long diacuialont altar e, ir poialblo. 

Contact ua about catalog, danlar. dlacounta, and aatvlcaa. 
Moal programs in aourca: glvo computar. OS, disk ilia. 
25% otf mulllpta pu'chiaai ot aama program on on* order. 
VISA and MASTER CARD »«aplad; US lunda only, plaaaa. 
Add GA aalaa tax (II in GA) and 5% shipping. 

IUNI|FLEX "-■ tachncar Byatama Conauttanb O&a «Ae.n>aanl 
COCO T«no, WSD06 tk»n SXOOS Suit Sowa«. 



58 



March '86 



68 Micro Journal 






K-BASIC* 



The Only 6809 BASIC to Binary Compiler for OS-9 

FLEX or SK*DOS 

Even runs on the 68XXX SK*DOS Systems* 



.--... — — .. N 

Hundreds Sold at 
Suggested Retail: 

0100.00 



I 



• 6809 - OS-9"* users can now transfer their FLEX™ 
Extended BASIC (XBASIC) source files to OS-9. com- 
pile with the OS-9 version and run them as any other 
OS-9 binary "CMD* program. Much faster than BASIC 
programs. 

• 6809 - FLEX users can compiler ttieir BASIC source 
files to a regular FLEX \CMD" file. Much faster execu- 
tion. 

• 68XXX - SK'DOS™ users running on 68XXX systems 
(such as the Mustang-08/A) can continue to execute 
their 6809 FLEX BASIC and compiled programs white 
getting things ported over to the 68XXX. SK'DOS 
allows 6809 programs to run in emulation mode. This is 
the only system we Know of that wil run both 6809 & 
68XXX binary files. 

K-BASIC is a true compiler. Compiirig BASIC 6809 pro- 
grams to binary command type programs. The savings 
m RAM needed and the increased speed of binary 
execution makes this a must for the serious user. And 
the price is now RIGHT! 

Don't get caught up in the Team a New Lan- 
guage" syndrome - Write Your Program in 
BASIC, Debug it in BASIC and Then Compile 
it to a .CMD Binary File. 



For a LIMITED time 

save over 65%... 

This sale will not be 

repeated after it's 

over! * 
/ >...... ...... . N 

SALE SPECIAL: 

$69.95 



l z 1 




* in 



n i 

m 



Thank-You-Sale 



On(y from: 



c 



S.E. Media 



p 



i 



5900 Cassandra Smith Rd. 

HbtaorCTn 37343 

Telephone 615 842-6809 

Telex 510 600-6630 



A Division of Computer Publishing inc. 
Over 1,200 Titles • 680T>68&«8uao 



K-BASIC wil nn imta 68XXX SK'DOS in aniUai mode fcr ire 6*09. 
ftice wbjta to dimgc wihi* axkx. 



68 Micro Journal 



March 88 



59 



Clearbrook Software Group (604)853-9H8 



CSG IMS is THE full featured relation- 
al database manager for OS9/OSK. 
The comprehensive structured ap- 
plication language and B + Tree Index 
structures make CSG IMS the Ideal 
tool for file-Intensive applications. 
CSG IMS (or CoCo2/3 059 L1/2 (single user) $169.95 

CSG IMS for OSS L2 or 66000(multl user) $495.00 

CSG IMS demo wfft manual $30 




MSF - MSDot File Manager for CoCo 3/OS9 Level 2 
allows you to use MSDos disks directly under OS9. 

Requires CoCo 3, OS9 L2, S0ISK3 driver $45.00 



SER1NA - System Mode Debugger for OS9 L2 

allows you to trace execution of any system module, 
set break points, assemble and disassemble code and 
examine and change memory. 

Requires CoCo3 or Gimlx II, OS9 L2 & 80 col. terminal $139.00 



ERINA - Symbolic User Mode Debugger for OS 9 
lets you find bugs by displaying the machine state and 
instuctions being executed. Set break points, change 
memory, assemble and disassemble code. 

Requires 80 column display. OS9 L1/2 $69.00 



Shipping: N. America - $5. Overseas - $10 
Clearbrook Software Group P.O. Box 8000-499. Sumas. WA 98295 

OS8 It ft Uftdtmftr* of Mlcro*tr# Sytttmt Corp., MSDot it t t'tdtmarfc orf MfCrotofl Corp. 



M10B Dual Async Serial Card 




n» yioa k «t DM a port »| nA.u » hthi cart Inr SSSOc but wt»u. •*** n*0t 
xsawmi d mm»€**rm+n iuk« afc^fevt vtmj tfw Npt> co* of m 
i i/O «*«nt»u 

. ^paka sCH sua Dot run uun. Wy uiv ft " " f aet *»"«<■ i"»™* bud 

Mt to ttc* It >,■ m) » » » . l lt <»^»il««l K) 3« t* bat), t by» ixaM cMta FVO. 
Wtptl im w>t i ii <iaufc/li»«,w1q —taapmalti ITT3/CTS Ha»t tartrri 

. hmm Mortt tattalt atort to oe» ut* I tm» ». Sqaet uw»y. lw»«a »M"' ma 



i i 



■ exiatd S*J9e m 

. » fcftrftt OTt/PCE 
. On txard <*fM ad 
.OoftJptdaO SSSOc (x, 



out Cacti tM <w Ota ttmmtm ( w 



■ 12S0O 
23.U 

H «' 



Ttarttr W p*» 

vmw.KO 
rnpty By ehta, 
visa mm < 

ctttT. MHKOO 



■ * ut <ktkT*. «• roe 



Iwtff V ctav 10 ril ortltm 



WT 1*7 
Tat: (tWI 171.1411 

Ma M-mttttvc* 



SPECIAL - ATARI™ 

& 

OS-9™ 



NOW! - If you have either the Atari 520 or 
1040 - you can take advantage of the "bar- 
gain of a lifetime" OS-9 68K and BASIC all 
for the low, low price of: 

$150.00 



Call or Write 

S.E. AAedia 

5900 Cassandra Smith Rd. 

Hixsoo. TNI 37343 

615 842-4601 







68000 68020 68010 



68008 6809 6800 

Write or phone lor catalog. 

AAA Chicago Computer Center 

120 Chestnut Lane — Wheeling IL 60090 
(312) 459-0450 



Tpchnleil Contullttlon tvtlltblt moil wMfctUyt Irom 4 PH to 6 PM C8T 



60 



March '88 



68 Micro Journal 



THE 6800-6809 BOOKS 

..HEAR yt. NtA* 



OS-9" 
User Notes 



By: Peter Dibble 

The publishers ,of 68' Micro Journal are proud to aake 

available Che publication of Peter Dibblea 

OS 9 USM KTTT5 

loforaujtioa for the BECOMES to C be FIO, 
tegular or CoCo OS9 

Oalog 0S9 

HELP, HINTS, PROBLEMS, REVIEWS, SUGGESTIONS, COMPIAINTS. 

0S9 STANDARDS, Generating a New Bootstrap, Sulldinf. a 

new Syatea Disk, 0S9 Uaers Group, etc- 

Prograa Interfacing to OS9 
DEVICE DESCRIPTORS, DIRECTORIES, "FORKS", PROTECTION. 
"SUSPEND STATE". "PIPES", "INPUT/OUTPt'T SYSTEM", etc. 

Frograaadng Language a 

Assembly I-anguage Programs and Interfacing; Baslc09, C, 
Pascal, and Cobol revlewa, prograaa, and uses; etc- 



Dlaka Include 
■o cyplnjt all tba Source Uatlnga la. Source Code and, 
where applicable, aaaeabled or compiled Operating 
Prograaa. The Source and the Dlacuaslona In the 
Coluana can be uaed "aa la", or aa a "Starting Point" 
for developing jour OUH aore powerful Prograas- 
Prograaa aopietiaea uae aultlple Languages auch aa a 
ahort Aaaenbly Language Routine for reading a 
Directory, which is then "piped" to a Baalc09 Routine 
for output formatting, etc. 



BOOK $9.95 

Typeset — w/ Source Uatlnga 

(3-Hole Punched; 8 x 11) 

Deluxe Under S5-50 



All Source Listings on Disk 




1-8" SS, SD Dlak - 
2-5" SS, DD Disks - 



• - S14-95 
- S24.9S 



FLEX™ 
USER NOTES 

By: Ronald Anderson 

The puhllahera of 68 MICRO JOURNAL are proud to 
ake available the publication of Ron Anderaon'a FUZX 
DSII MOTES, In book for*). Thla popular monthly coluan 
a been a regular feature In 68' MICRO JOURNAL SINCE 
1979- It has earned the reaped of thousands of 
68 MICRO JOURNAL readera over the yeara. In fact, 
a coluan haa been described aa Che 'Bible' for 68XX 
uaera, by some of the world'a leading alcroproceaaor 
professionals. The aost needed and popular 68XX book 
available. Over the yeara Ron'a coluan ha* been one of 
the aost popular In 68 MICRO JOURNAL. And of courae 
68 MICRO JOURNAL 1* the aoat popular 68XX aagazlne 
published. 

Listed below are a few of the TUT files Included in the 
book and on diskette. 

Alt TEXT files in the book are on tf>e disks 



LOGO Cl File toad program to ottsei memory — ASM PIC 

MEMOVE CI Memory move program — ASM PIC 

DUMP C1 Pnnler dump program — uses LOGO — ASM PIC 

SUBTEST C1 Simulation ol 6600 code to 6609. show difference* — ASM 

TERMEM C2 Modem input to disk (or other port input to Oak) — ASM 

M CZ Output a tile to modem lor another po<i) — ASM 

PHINTC3 Parallel (enhanced) printer driver — ASM 

MODEM C2 TTL output to CRT and modem (or Other port) — ASM 

SCIPKG C1 Scientific math routines — PASCAL 

U C4 Mini.monitor. disk resident many useful (unctions — ASM 

PAINT C4 Parallel pnnler dnver. without PFLAG — ASM 

SET CS Set printer modes — ASM 

SETBAS1 C5 Set pnnler modes — A-BASIC 

NOTE: -CI..C2, etc. -Chapter 1, Chapter 1, etc. 

"Over 30 TEXT files Included 1* ASM (aaseabler)-PASCAL- 
PIC (poaltlon Independent code) TSC BAS1C-C, etc- 

Book only: $7.95 + $2.50 S/H 
With disk: 5" $20.90 + $2.50 S/H 



With disk: 8" $22.90 + $2.50 S/H 

Shipping 4 Handling $3.30 per Book, ft 30 per Dlak set 

toeign Orders Add $4.50 Surf tee Mill 

or $7.00 Aii Mail 

If paying by check - Please allow 4-6 weeks delivery 

* All Currency in U.S. Doilm 

Continually Updated In 68 Micro Journal Monthly 

Computer Publishing Inc. _ 



5900 Cassandra Smith Rd. 
Hixson, TN 37343 



"FLEX la a trademark of Technical Syatena Conaultanta 

"0S9 la a trademark of Hlcroware and Motorola 

"68' Micro Journal la a trademark of Computer Publishing 



(615) 842-4601 

Telex 5106006630 



68 nforo Journal 



March '88 



61 



tr 



*% 



!!! Subscribe Now !!! 
68 MICRO JOURNAL 

OK, PLEASE ENTER MY SUBSCRIPTION 

Bill My: Mastercard | | V1SA| 1 
Card # Exp. Date 

For 1 Year 2 Years 3 Years 



Enclosed: S 



Name 
Street . 
City_ 



State 



Zip. 



Country_ 



My Computer Is: 



Subscription Rates 



r ^ 

U.S.A.: I Year $24.50, 2 Years $42.50, 3 Years $64.50 

♦Foreign Surface: Add $12.00 per Year to USA Price. 

♦Foreign Airmail: Add $48.00 per Year to USA Price. 

♦Canada & Mexico: Add $9.50 per Year to USA Price. 

♦U.S. Currency Cash or Check Drawn on a USA Bank ! 
^ J 

68 Micro Journal 

5900 Cassandra Smith Rd 
POB 849 




Hixson.TN 37343 




Telephone 615 842-4600 
Telex 510 600-6630 



^= 



J 



Reader Service Disks 

Disk- I Kleiort, Minical, Miflkofy.Miivifos, "Lifetime. **Poetiy. 

••FoodJin. ••Did. 
Disk- Z Diikedil w/ intL& fuel, Piime. •Prniod. ••Snoopy, 

••Football. ••Hexpt«m."Lifeume. 
Disk- 3 Cbug09, Seel, Scc2, Ftnd.Tablc2, Intcxt. Disk exp, 

•Diikuve. 
Disk- 4 Milling Program. •Fuufcuu, *Qumge, •Tcstdisk. 

Disk- S 'DISKFIX 1, 'DISKFIX 2, ••1.ETTER. "LOVESIGN. 

••BLACKJAK, "BOWLING. 
Disk- 6 ••Puidmse Older. Index (Duk file in(UX 

Disk- 7 Linking Leader. Rlo»d. Hetnea i. 

Disk- 8 Crtejt. (-ostler (May 82) 

Disk- 9 Dat»copy,Ouaiix9(Aug82). 

Disk- 10 Home Accounting (July 82). 

Dlsk-11 Dissembler (June 84). 

Disk. 12 Modem68 (May 84). 

Disk- 13 •Initmf68. Tes(mffi8,'Qean^.*Dskaii«n.Hdp.Date.'ftL 

Disk-14 •toil, Test, •Tenninal, 'Find, »Diikedii, Inij-Lib. 

Disk-lS Modem9 + Updates (Dec. 84 Cilditiit) to Modcm9 

(April 84 Commo). 
Disk-16 Copy.Txt, Copy.Doc, Cat-Txi, Cat.Doc 

Disk-17 MuchUtiliry.RATBAS, A Basic Prcpnsixj or. 

Disk 18 Parse.Mod, Siae.Cmd (Sept 85 Annstrong),CMDCODE. 

CMD.Txl (SepL 85 Spray). 
Disk-19 Oock. Date, Copy, Cat, PDELAtm A Doc., Eirors.Sys, 

Do, Log, Asm A Doc. 
Dlsk-20 UNIX like Tools (July A Sept. 85 Taylor A Gilchrist). 

Drmgon.C, Giep.C, LS.C. FDUMP.C. 
Disk -21 Utilities A Games - Date, life. Madness, Touch, Goblin, 

Stanhot, A 15 mote. 
Disk -22 Read CPM A Non-FLEX Disks. Fraser May 1984. 

Disk -23 ISAM, Indexed Sequential file Acceuing Mahodj. 

Conxn Nov. 1985. Extensible Table Driven. Language 

Recognition Utility, Anderson Mare)il986. 
Disk -24 68' Micro Journal Index of Articlej A Bit Bucket hems 

from 1979 - 1985, John Current. 
Dlsk-25 KERMJT for FLEX derivtd from the UNIX ver. Buig 

Feb. 1986. (2)-5" Disks or (t)-8" Disk. 

Disk 26 Compact! UniBoaid review, code A disgram, Burlison 

Matd] t6. 
Dlsk-27 ROTABIT.TXT. SUMSTEST.TXT. CONDATA.TXT. 

BADMEN.TXT. 
Dlsk-28 CT-82 Emulator, oil mapped. 

Disk -29 ••Star Trek 

Disk -30 Simple Winchester, Dec. '86 Green. 

Dlsk-31 ••• Read/Write MSfPCDOS (SK'DOS) 

Dlsk-32 Heir-UNIX Type upgrade - 68MJ 2/87 

Disk -33 Build the GT-4 Terminal - 68MJ 1 1/87 Condon. 

NOTE: 

This is a reader service ONLY) No Warranty is offered or imputd. they are 
as leceived by 68* Micro Journal, and are for reader convenience ONLY 
(some MAY include fixes or patches). Alto 6800 and 6809 programs are 
mixed, u each is fairly simple (mostly) to convert to the other. Software is 
available to cross -assemble all 

♦ Denotes 6800 - »♦ Denotes BASIC 
••• Denotes 68000 - 6809 no indicator. 



8" disk $19.50 
S" disk $16.95 



Shipping A Handling -U.S.A. Add: - 53JO 
Overseas add: S4.S0 Surface - $7.00 Airmail 

68 MICRO JOURNAL 

5900 Cassandra Smith Rd. 
Hix son, TN 37343 

(615)842-4600 - Telex 510 600-6630 





62 



March '88 



68 Micro Journal 



PT-68000 SINGLE BOARD COMPUTER 

The PT68K2 is Available in a Variety of Formats 
From Basic Kits to Completely Assembled Systems 



BASIC KIT (8 MHZ) ■ Board. 68000. 
HUMBUG MONITOR * BASIC in ROM, 
4K STATIC RAM, 2 SERIAL PORTS, aU 
Components S200 

PACKAGE DEAL • Complete Kit with 
Board 68000 10 MHZ, SK'OOS. 512K 
RAM, and al Necessary Pads $480 

ASSEMBLED BOARD (12 MHZ) 
Completely Tested. 1024K RAM. 
FLOPPY CONTROLLER. PIA. SK'OOS 
S675 

ASSEMBLED SYSTEM ■ 10 MHZ 
BOARD. CABINET POWER SUPPLY, 
MONITOR ♦ KEYBOARD, 60 TRACK 
FLOPPY DRIVE. CABLES $1125 
For A 20 MEG DRIVE. CONTROLLER 
and CABLES Add $345 



PROFESSIONAL OS9 



•9COOSmtl<mSmr»ni<i 

STAB * SOFTWARE SYSTEMS COW. 

•^M* it a Trademark o» Uteroam* 



$500 




FEATURES 

MC68000 Processor, 8 MH2 Clock (optional 

10.12.5 MHZ) 

51 2K or 1024K ol DRAM (no wait stales) 

4K ol SPAM (61 16) 

32K.64K or 128K ol EPROM 

Four RS 232 Serial Ports 

Floppy disk controller will control up to four 

5 1/4-. 40 or 80 track. 

Clock with onboard battery. 

2 - a bit Parallel Ports 

Board can be mounted In an IBM type PC/ 

XT cabinet and hat a power connector to 

match the IBM type power supply. 

Expansion ports . 6 IBM PC/XT com pan Wo 

I/O pons. The HUMBUG" monitor supports 

mooocMxr<0 and/or color adaptor cards 

and Western Digital Winchester interface 

cards. 



PERIPHERAL TECHNOLOGY 

1480 Tarrall Mill Rd., Suite 870 
Marietta, Georgia 30067 

404/984-0 742 Send For Catalogue 

VISA/M ASTERCARO/CHECK/C.O.O. For Complete Information On All Products 



e 



=^ 



DATA-COMP 



SPECIAL 



Heavy Duty Power Supplies 




For A limited Ume our HEAVY DUTY SWTTCMNG POWER SUPPLY. These are BRAND NEW units. Note that 
prices are less than 1/4 the normal price far these high quatty unto. 



r 



Make: Brsifcrt 

Size 105 x 5 x Z3 ircho 

fncliafing heavy muB|g tra±a and heatsnk. 

Rating: in 110/220 volts ac (srap change) Out: 130 wans 

Output: +5v . 10 amps 
+12v . 4.0 amps 
+12v - 2.0 amps 
-12v - 05 amps 

Mabng CutanJCF TujiriiuU smp 

Load Reactkxi: Aumraoc short racial reoovoy 

SPECIAL: $5955 each 

2 or inore $4955 each 

AM: SIX ail S/H 



^ 



Make-. ftarbert 
She 10.75 x M x 125 inches 

Raring: 110/220 ac (strap change) Out 81 wans 

Outputs: +5v - 8.0 amps 

+12v - 24 amps 

+12v - 2.4 amps 

+12v-2.1 ampa 

12v - 0.4 amps 

Mating QnOox Molex 

Load Reboot Aiaonaijc short crrcmi recovery 

SPECIAL: $4955 each 

2 or more $3955 each 

MA $750 S/H cadi 



J K 



9800 CwaanrJn Strath Ret, Hbtaon, Tn. 37343 Toaynnna 615 842-431) 



Teaax 510 600-6630 



J 



68 Mere Journal 



March '86 



63 



GMX MICRO-20 and TWINGLE-20 PRICE LIST 




All versions Include 1 SAB Board 




MICRO-20 with 1MB RAM 


MICRO-20 with 2MB RAM 


TWINGLE-20 wfttl 4MB RAM 


12.5 MHz 


1855 00 


2155.00 


3855.00 


16.67 MHZ 


2185 00 


2485.00 


4185.00 


20 MHZ 


258500 


2885.00 


4785.00 



OPTIONAL PARTS AND ACCESSORIES 



68881 12.5MHz Floating Point Coprocessor S 165 00 

68881 16,67MHz Floating Poinl Coprocessor $ 225 00 

68881 20MHz Floating Point Coprocessor t 3*5 00 

MOTOROLA 68020 USERS MANUAL S 18.00 

MOTOROLA 68030 USERS MANUAL J 18.00 

MOTOROtA 68881 USERS MANUAL $ 18.00 

EfllEKESl»HIW!EB!lT!H!TO $1399.00 

The package includes a PC-style cabinet with a custom backpanet. 
a 25 Megabyte (unformatted) hard disk and controller, a floppy disk 
drive, a 150 wan power supply, cooling Ian, panel mounted reset and 
abort switches, and all necessary internal cabling. (For use with 
SAB- 90 serial connectors only.) 

2nd 5'80 FLOPPY & CABLES FOR M20-AP, ADO J 250.00 

SECOND 25MB HARD DISK S CABLES. AOD $ 780.00 

TO SUBSTITUTE 50M8HD FOR 25MB HO. A00 $ 290.00 

TO SUBSTITUTE 80MB HO FOR 25MB HD. A00 J1500.00 

TO SUBSTITUTE 155MB FOR 25MB HO, AOD $2100.00 

60MB TEAC STREAMER WITH ONE TAPE $ 690.00 

PKG.0F5TEACTAPES S 11250 

CUSTOM BACK PANEL PLATE (BPP-PC) $ 44.00 

I£2 * "500 

The SBC-16S extends the I/O capabilities of the GMX Micro-20 
68020 Single-board Computer by adding sixteen asynchronous 
serial I/O ports By using two SBC-16S boards, a total ot thlity-slx 
serial ports are possible. 

llW*MJu^aiJiiaj:>*lMi<:Mi|!lM.lil:13i S165.00 

The board provides level-shilling between TTL level and 
standard RS-232 signal levels tor up to 4 serial I/O poits. 

l.1im.-iajJirjm«Ht|:HH;|iIH:lB.1iiJl {398.00 

The GMX SBC-60P uses three 68230 Parallel Interface/Timers 
(Pl/Ts) to provide up to forty-eight parallel I/O lines. The I/O lines 
axe buttered In six groups ot eight lines each, with separate butler 
direction control tor each group. Butler direction can be fixed by 
hardware lumpers, or can be software programmable tor 
bidirectional applications. 

ikmiiiir^i: i ti:nrj;iiin:iia'. j .11 {75.00 

The SBC-WW provides a mea ns ot developing and testing 
custom I/O Interlace designs lor the GMX Micro-20 68020 Single- 
board Computer The board provides areas tor both DIP (Dual Inline 
Package) and PGA (Pin Grid Array) devices, and a prewired 
memory area tor up to 512K bytes ot dynamic RAM 

I HiJIIKIJiHaHilHWUI $196.00 

The SBC-BA provides an Interlace between Ihe GMX Mlcro-2D 
68020 Single-board Computer and the Motorola Inpul/Output 
Channel (I/O bus). With ihe I/O bus. up to sixteen off-the-shelf or 
custom peripheral devices (I/O modules) can be connected to the 
GMX Micro-20 

IJJi|jmiJi!U .MM l . l H.H.Iii"l ! |MH:lJJ. l l $475.00 

The SBC-AN provides an Interface between the GMX MlcfO-20 
68020 Single-board Computer and the ARCNET modified token- 
passing Local Area Network (LAN) originally developed by Oatapoint 
Corp. The ARCNET Is a baseband network with a data transmission 
rate ot 2.5 Megabits/second. The standard transmission media Is a 
single 93 ohm RG-62/U coaxial cable Fiber optic versions are 
available as an option. 

0S9 LAN Software Drivers for SBC-AN 120.00 



I/O EXPANSION BOARDS 



16 PORT SERIAL BOARD ONLY : 



GMX MICRO-20 SOFTWARE 



020 BUG UPDATE - PHOMS ft MANUAL $150.00 

THESE 68020 OPERATING SYSTEMS ARE PRICED 
WHEN PURCHASED WITH THE MICRO-20. PLEASE 
ADD $150.00 IF PURCHASED LATER FOR THE 
UPDATED PROMS AND MANUALS. ALL SHIPPED 
STANDARD ON S'A ' DISKS }'/>' OPTIONAL IF 
SPECIFIED. 



0S9/68020 PROFESSIONAL PAK $850.00 

Includes OS.. "C", uMACS EDITOR, ASSEMBLER. DEBUGGER, 
development utilities, 68881 support. 

0S9/6M20 PERSONAL PAK $ 400.00 

Personal OS-9 systems require a GMX Micro-20 devetooment 
system runnin g Professional OS-9/68020 tor iniltai configuration 

BASIC (Included In PERSONAL PAK) . $ 200.00 

C COMPILER (Included In PROFESSIONAL PAK) $ 750.00 

PASCAL COMPILER $ 500.00 



Unl FLEX (for Micro- 20) $ 400.00 

UnlFLEX WITH REAL-TIME ENHANCEMENTS $ 800.00 

UnlFLEXVM (tor TWINGLE-20) $ 600.00 

UnlFLEX VM REAL-TIME ENHANCEMENTS $1000.00 



Other Sollware lor UmFLEX 



UnlFLEX BASIC W/PRECOMPILER $ 300.00 

UnlFLEX C COMPILER $ 350.00 

UnlFLEX COBOL COMPILER $ 750.00 

UnlFLEX SCREEN EOITOR $ 150.00 

UnlFLEX TEXT PROCESSOR $ 200.00 

UnlFLEX SORT/MERGE PACKAGE $ 200.00 

UnlFLEX VSAM MOOULE $ 100.00 

UnlFLEX UTILITIES PACKAGEI $ 200.00 

UnlFLEX PARTIAL SOURCE LICENSE $1000.00 

GMX EXCLUSIVE VERSIONS, CUSTOMIZED FOR 
THE MICRO-20, OF THE BELOW LANGUAGES 
AND SOFTWARE ARE ALSO AVAILABLE 
FROM GMX. 

ABSOFT FORTRAN (UnlFLEX) $1500.00 

SCULPTOR (ipedCy UnlFLEX 01 0S9) $ 995.00 

FORTH (OSS) $ 595.00 

OYNACALC (ipecfly UnlFLEX Br 0S9) $ 300.00 

GMX DOES NOT GUARANTEE PERFORMANCE OF ANY GMX 

SYSTEMS. BOARDS OR SOFTWARE WHEN USED WITH 

OTHER MANUFACTURERS PRODUCT. 

ALL PRICES ARE F.O.B. CHICAGO IN U.S. FUNDS 

GMX, Inc. reserves the right to change pricing, terms, and 

products specifications at any time without further notice. 

TO ORDER BY MAIL SEND CHECK OR MONEY ORDER OR USE 

YOUR VISA DR MASTER CHARGE Please allow 3 weeks for 

personal checks to cleat US ordeis add $5 handling It under 

$200 00 Foreign orders add $10 handling rt order is under 

$200 00 Foreign orders over $200 00 will be shipped via Emery Air 

Freight COLLECT, and we will charge no handling. All orders must 

be prepaid in U.S. funds. Please note that foreign checks have 

been faking about 8 weeks lor collection so we would advise wiring 

money, or checks drawn on a bank account in the US. Our bank is 

the Continental Illinois National Bank of Chicago. 231 S LaSalle 

Street. Chicago. IL 60693, account number 73-32033 

CONTACT GMX FOR MORE INFORMATION ON THE ABOVE 

PRODUCTS 

GMX STILL SELLS GIM1X S50 BUS SYSTEMS. BOARDS « PARTS 
CONTACT GMX FOR COMPLETE PRICE LIST. 



GIT1X 1337 W 37th Place. Chicago. IL 60609 (312) 927-5510 — TWX 910-221-4055 — FAX (312) 927-7352 



64 



March '88 



68 Micro Journal 




Mj^^the — llStaiV' 



Now Offenng *FLEX" (2 Versions) 
AND 'STAR-DOS PLUS+ '" 




For Otttmrtng Call 

(615)842-4600 



FROM - DATA-COMP, C.P.I. 



A Family of 100% 68XX Support Facilities 

The Folks who FIRST Put FLEX" on 

The CoCo 



vH 






t^*>* 



&.:> 



* 



p^^r^ 



C o1 



«* e 



**%P 



^*" o* 1 



M 



STAR DOS PLUS + 

• Functions Same as FLEX 

• Reads • writes FLEX Disk* 

• Run FLEX Programs 

• Just type: Run 'STAR DOS" 

• Over 300 utilities & programs 
to choose from 



f 


TSC Editor 




NOW $35.00 


L 


y) 



PLUS 

ALL VERSIONS OF FLEX & STAR-DOS 

+ Read-Write-Dir RS Disk 
+ Run RS Basic from Both 
+ More Free UtJities 




INCLUDE 

+ External Terminal Program 
+ Test Disk Program 
+ Disk Examine & Repair Program 
+ Memoty Examine Program 
+ Many Many More!!! 



TSC Assembler 




(bgtMOO 


L 


NOW $35 OO 

1 



CoCo Disk Drive Sgsleuis 



2 TH1NLINE DOUBLE SIDiO DOUBLE DENSITY DISK DRIVES 
SYSTEM WITN FDUEE SUCI-L* .CAIINtT, 01SI OllVE CARLE. JiH 
NEW DISK CONTROLLER JP0-CP VJTH J-OOS.RS-DOS OPERATINC 
SYSTEMS. |4*«.») 

• Spiel (y What CONTROLLER You Want JAN, or RADIO SHBCX 

TMINLINE DOUBLE S1DE0 
DOUBLE DENSITY *0 TRACKS 



MK VPCSAOi 

FOR C.0,E, P, AND COCO II 
RADIO SHACK BASIC I. 2 
EAD10 SHACK DISK BASIC 1.1 



Verhjhm Diskettes 



Sinftlf Sldad Doubl« DtDtity 
Deubl* Sided Double Deoelty 



Cooli oilers 



JtN JPO-CP WITH J-0OS 
WITH J-OOS, KS-OOS 
RADIO SHACK ] . I 

RADIO SHACK Diik CONTROLLER 1.1 



Disk Di ive Ciu!>-'> 



Ceble for One Drive 
Cable for Two Drive* 





DISK OltVE CABINET POl A 


III*. as 


SINGLE (WIVE 




DISK DRIVE CAEINET POl TWO 




TK1NLINE DRIVES 


} 14.00 


nirruj 


} 14.00 


EPSON U-BO 




EPSON HX-70 




EPSON KX-100 


•139. 95 


ACOMoaiE* rot ifboc 


$119. *» 




tiM.aj 


61*6 2E SEEIAL BOARD 


81*9 32K EXPAND TO I2BK 




EPSON MJ-M-UO KIIMNS 


413*. aj 


EPSON LX-80 ElEtONS 




TEACTOE UNITS PO« LX-BO 




CABLES 4 •THE* IHTCK/ACKS 




CALL POR PRICING 


i la.tj 




i 24. as 





I 29.95 



t 24. as 
i 24. as 



* 4».»5 

t ta.as 



B2M.9J 

•us.aj 
$»*i.*i 



JI49.95 

» s.as 



DATA-COMP 

5900 Cassandra Smith Rd 
Hixson. TN 37343 




C3| 


SHIPPING tS* 

f^:^ d ^" s .| (615)842-4600 

n(H. $2.50 'Of OtoWring 

Telex 5106006630 




s 



I An Ace of a System in Spades! The New 

I MUSTANG-08/A 



TM 



Now with 4 aerial porta standard & speed Increase to 12 afhx CPU + on board battery 
backup and Include* the PROFESSIONAL OS*9 package - Including the $900.00 OSfl 

C compilerl Thla offer wont laat fareverl 



NOT 128K, NOT 512K 
FULL 768K No Walt RAM 



Now even faster! 
with 12 Mhz CPU 



I 



The MUSTANG-OB™ system took mwy hand from al 
I other 68006 syaema we laded, riming OS-9 66K3 
I The MU5TANG08 Includes OS^aC andtor Peter 
| Stark's SCDOS™ SKDOS is a single user, single ta&Mng 
| eyatxn that takes up whew 'FLEX™ left off. SKTJOS is 
| actuary a 68XXX FLEX type system (Not a TSC product.) 



C Campfe time OS-9 B8K. Hand Disk^ 
MJ5TAN&0B aitsCPU Qmh-32ssc 

Other popukr (B008 system litan-OSssc 

MUSTANM20 0rr*i-21sse 



=^ 




rstem tndudca 06-9 68K cc 


SCDOS - Your Choice 


Specificatbns: 




CPU MC680CB 


12 Mb 


HAM 768K 


2SK ChpB 


NoWkt^tn 




PORTS 4-RS232 


MCOS31 QUART 


2-8t*PMU 


MC8S1 PIA 


aOCK MKUTCQ 


FteeJ Trns Cfa* Bat. BAJ 


EPROM 18K 3* or MK 


S*b*t*i 


FLOPPY W01 772 


5 14 0TMB 


HARD DISK t/tsVe Port 


WOtOOe Boat) 



I 
I 
I 
I 
I 
I 
I 
I 
I 

Y Nt > w more serial ports - foster CPU 
j Battery B/U - and $650.00 OS-9 Profcs 
t slonal with C compiler included! 



25 Megabyte 
Hard Disk System 



^ 



J 



*$400.00 



See Musanp/02 Ad - page 5 
for tiaje-ti detais 




MUSTANG-08 



LOOK 



Saxnds 



08-9 CSK 

0B-* 



32 bit Rtyncr 

.. .18.0. ..».0 
.9.8. ..6.3 



fhtfcV 

rsgWar long I; 

for (bO; I < WWW; ♦+*); 



$2,398.90 

Complete with PROFESSIONAL OS-9 

includes the $500.00 C compiler, PC 

style cabinet, heavy duty power supply, 

5" DDDS 60 track floppy, 25 MegByte 

V. ■J^l£ 1 ^ c _i^ < £!f^° Ru IL. ,-(/ 

Unite other 68008 systems there am several sfanlteant 
dKsrenoBB. The MUSTANG-08 is a Ml 12 Megahertz system. The 
RAM ussb NO wal states, this means Ml bore MUSTANG type 
performance. 

Also, eJbwbg tor addressable RDMPROM the RAM m the 
maximum slowed for a 68008. The 68008 can only address a 
Mai of 1 Megabytes of RAM The design afbWB al the RAM 
apace (tor al practical purposes) to be utjfesd What Is not 
svBlarJe to the user b requked and reserved for the system. 

A RAM disk of 480K can be easly configured, laaviig 288K 
free far prn&Trrvsyatem RAM apace. The RAM 06K can be 
configured to any sow your m a rgin requires (system must 
have 128K in addtfon to Is other requlrBrnertts). Leaving the 
remainder of the anginal 768K tor program use. SUfoen) 
source included (drivers, etc) 



HUfTANCMItaiB 



f 



Data-Comp Division 




A Decade of Quality Service' 

*J S^ Systons fWrirj-Wide 

Computer Publishing, Inc. 5900 Cassarda SmHh Road 
Tetephone 615 842-4601 - Telex 510 600-6630 rfcon, Tn 37343 

* These) with SWTPC r*ctan*ty FLEX 5" • Cd for apectd hfo.